# 1. Java-Stage: Kompilieren FROM openjdk:17-jdk-slim AS java-build WORKDIR /app # Java-WebSocket und SLF4J-Bibliothek herunterladen RUN apt-get update && apt-get install -y wget \ && wget https://repo1.maven.org/maven2/org/java-websocket/Java-WebSocket/1.5.3/Java-WebSocket-1.5.3.jar -O /app/Java-WebSocket.jar \ && wget https://repo1.maven.org/maven2/org/slf4j/slf4j-api/1.7.32/slf4j-api-1.7.32.jar -O /app/slf4j-api-1.7.32.jar \ && wget https://repo1.maven.org/maven2/org/slf4j/slf4j-simple/1.7.32/slf4j-simple-1.7.32.jar -O /app/slf4j-simple-1.7.32.jar # Quellcode kopieren COPY src /app/src # Erstelle bin-Ordner für kompilierten Code RUN mkdir -p /app/bin # Kompilieren mit der WebSocket-Bibliothek RUN javac -cp /app/Java-WebSocket.jar:/app/slf4j-api-1.7.32.jar:/app/slf4j-simple-1.7.32.jar -d /app/bin /app/src/de/szut/zuul/*.java # 2. Finale Java-Stage FROM openjdk:17-jdk-slim WORKDIR /app # Kopiere das kompilierte Java-Programm COPY --from=java-build /app/bin /app COPY --from=java-build /app/Java-WebSocket.jar /app/Java-WebSocket.jar COPY --from=java-build /app/slf4j-api-1.7.32.jar /app/slf4j-api-1.7.32.jar COPY --from=java-build /app/slf4j-simple-1.7.32.jar /app/slf4j-simple-1.7.32.jar # Port für WebSocket öffnen EXPOSE 8867 # WebSocket-Server starten CMD ["java", "-cp", "/app:/app/Java-WebSocket.jar:/app/slf4j-api-1.7.32.jar:/app/slf4j-simple-1.7.32.jar", "de.szut.zuul.ZuulWebsocket"]