From f22a27c0144e858e318effbb3cddefddb1cebda6 Mon Sep 17 00:00:00 2001 From: Stanislav Trailov Date: Wed, 19 Nov 2025 15:44:15 +0200 Subject: [PATCH] Fix simple UI docker image (#2811) * Fix simple UI docker image Signed-off-by: strailov * Change workdir only when necessary Signed-off-by: strailov * artifactrepo also in /app Signed-off-by: strailov * add also /app in volume config Signed-off-by: strailov * fix artifact repo to be in /app and also fix volumes in docker compose Signed-off-by: strailov * Delete hawkbit-simple-ui/src/main/java/org/eclipse/hawkbit/ui/simple/config/AtmosphereConfig.java Signed-off-by: Stanislav Trailov * remove changes from download&install phase only Signed-off-by: strailov * fix volume for postgres compose files Signed-off-by: strailov * switch back to /app workspace also in db init * finalize absolut paths in db init dockerfiles * artifactrepo to relative path Signed-off-by: strailov * use relative path in dbinit dockerfiles Signed-off-by: strailov --------- Signed-off-by: strailov Signed-off-by: Stanislav Trailov --- docker/build/Dockerfile | 7 ++++--- docker/build/Dockerfile_dbinit | 6 +++--- docker/build/Dockerfile_dbinit_dev | 8 ++++---- docker/build/Dockerfile_dev | 7 ++++--- .../mysql/docker-compose-micro-services-dbinit-mysql.yml | 2 +- docker/mysql/docker-compose-micro-services-mysql.yml | 2 +- docker/mysql/docker-compose-monolith-dbinit-mysql.yml | 2 +- docker/mysql/docker-compose-monolith-mysql.yml | 2 +- .../docker-compose-micro-services-dbinit-postgres.yml | 2 +- .../postgres/docker-compose-micro-services-postgres.yml | 2 +- .../postgres/docker-compose-monolith-dbinit-postgres.yml | 2 +- docker/postgres/docker-compose-monolith-postgres.yml | 2 +- 12 files changed, 23 insertions(+), 21 deletions(-) diff --git a/docker/build/Dockerfile b/docker/build/Dockerfile index 3d3386968..32f5ba3c9 100644 --- a/docker/build/Dockerfile +++ b/docker/build/Dockerfile @@ -26,9 +26,10 @@ RUN set -x &&\ rm /${APP}.jar FROM eclipse-temurin:${JAVA_VERSION}-jre-alpine - +ARG APP_DIR=/app +WORKDIR ${APP_DIR} RUN addgroup -S hawkbit_group && adduser -D hawkbit -G hawkbit_group -RUN mkdir -p /artifactrepo && chown -R hawkbit /artifactrepo +RUN mkdir -p artifactrepo && chown -R hawkbit artifactrepo USER hawkbit ENV BUILD_DIR=/opt/hawkbit_build @@ -37,7 +38,7 @@ COPY --from=build ${BUILD_DIR}/spring-boot-loader/ ./ COPY --from=build ${BUILD_DIR}/snapshot-dependencies/ ./ COPY --from=build ${BUILD_DIR}/application/ ./ -VOLUME "/artifactrepo" +VOLUME /${APP_DIR}/artifactrepo ARG CONTAINER_PORT=8080 EXPOSE ${CONTAINER_PORT} diff --git a/docker/build/Dockerfile_dbinit b/docker/build/Dockerfile_dbinit index 110fbc68f..1003f6db0 100644 --- a/docker/build/Dockerfile_dbinit +++ b/docker/build/Dockerfile_dbinit @@ -20,7 +20,7 @@ RUN set -x &&\ apk del build-dependencies FROM eclipse-temurin:${JAVA_VERSION}-jre-alpine - +WORKDIR /app RUN addgroup -S hawkbit_group && adduser -D hawkbit -G hawkbit_group USER hawkbit @@ -30,7 +30,7 @@ ARG HAWKBIT_VERSION=pass_as_buils_arg ENV APP=${HAWKBIT_APP} ENV VERSION=${HAWKBIT_VERSION} -COPY --from=build /${APP}-${VERSION}.jar ./ +COPY --from=build ${APP}-${VERSION}.jar ./ ARG X_MS=256m ENV X_MS=${X_MS} @@ -47,4 +47,4 @@ ENV GC=${GC} ARG AND_THEN="exit 0" ENV AND_THEN=${AND_THEN} -ENTRYPOINT ["sh", "-c", "java -classpath /${APP}-${VERSION}.jar ${JAVA_OPTS} -Xms${X_MS} -Xmx${X_MX} -XX:MaxMetaspaceSize=${XX_MAX_METASPACE_SIZE} -XX:MetaspaceSize=${XX_METASPACE_SIZE} -Xss${XSS} -XX:+Use${GC}GC -XX:+UseStringDeduplication -XX:+UseCompressedOops -XX:+HeapDumpOnOutOfMemoryError org.eclipse.hawkbit.repository.jpa.init.HawkbitFlywayDbInit ${@} && ${AND_THEN}"] +ENTRYPOINT ["sh", "-c", "java -classpath ${APP}-${VERSION}.jar ${JAVA_OPTS} -Xms${X_MS} -Xmx${X_MX} -XX:MaxMetaspaceSize=${XX_MAX_METASPACE_SIZE} -XX:MetaspaceSize=${XX_METASPACE_SIZE} -Xss${XSS} -XX:+Use${GC}GC -XX:+UseStringDeduplication -XX:+UseCompressedOops -XX:+HeapDumpOnOutOfMemoryError org.eclipse.hawkbit.repository.jpa.init.HawkbitFlywayDbInit ${@} && ${AND_THEN}"] diff --git a/docker/build/Dockerfile_dbinit_dev b/docker/build/Dockerfile_dbinit_dev index cb6887fe7..df6a90c58 100644 --- a/docker/build/Dockerfile_dbinit_dev +++ b/docker/build/Dockerfile_dbinit_dev @@ -1,7 +1,7 @@ # set Java ARG JAVA_VERSION=21.0.9_10 FROM eclipse-temurin:${JAVA_VERSION}-jre-alpine AS build - +WORKDIR /app ARG HAWKBIT_APP=hawkbit-repository-jpa-init ARG HAWKBIT_VERSION=0-SNAPSHOT @@ -9,10 +9,10 @@ ENV APP=${HAWKBIT_APP} ENV VERSION=${HAWKBIT_VERSION} RUN addgroup -S hawkbit_group && adduser -D hawkbit -G hawkbit_group -RUN mkdir -p /artifactrepo && chown -R hawkbit /artifactrepo +RUN mkdir -p artifactrepo && chown -R hawkbit artifactrepo USER hawkbit -COPY org/eclipse/hawkbit/${APP}/${VERSION}/${APP}-${VERSION}.jar /${APP}-${VERSION}.jar +COPY org/eclipse/hawkbit/${APP}/${VERSION}/${APP}-${VERSION}.jar ${APP}-${VERSION}.jar ARG X_MS=256m ENV X_MS=${X_MS} @@ -29,4 +29,4 @@ ENV GC=${GC} ARG AND_THEN="exit 0" ENV AND_THEN=${AND_THEN} -ENTRYPOINT ["sh", "-c", "java -classpath /${APP}-${VERSION}.jar ${JAVA_OPTS} -Xms${X_MS} -Xmx${X_MX} -XX:MaxMetaspaceSize=${XX_MAX_METASPACE_SIZE} -XX:MetaspaceSize=${XX_METASPACE_SIZE} -Xss${XSS} -XX:+Use${GC}GC -XX:+UseStringDeduplication -XX:+UseCompressedOops -XX:+HeapDumpOnOutOfMemoryError org.eclipse.hawkbit.repository.jpa.init.HawkbitFlywayDbInit ${@} && ${AND_THEN}"] +ENTRYPOINT ["sh", "-c", "java -classpath ${APP}-${VERSION}.jar ${JAVA_OPTS} -Xms${X_MS} -Xmx${X_MX} -XX:MaxMetaspaceSize=${XX_MAX_METASPACE_SIZE} -XX:MetaspaceSize=${XX_METASPACE_SIZE} -Xss${XSS} -XX:+Use${GC}GC -XX:+UseStringDeduplication -XX:+UseCompressedOops -XX:+HeapDumpOnOutOfMemoryError org.eclipse.hawkbit.repository.jpa.init.HawkbitFlywayDbInit ${@} && ${AND_THEN}"] diff --git a/docker/build/Dockerfile_dev b/docker/build/Dockerfile_dev index b596fcf21..74527512c 100644 --- a/docker/build/Dockerfile_dev +++ b/docker/build/Dockerfile_dev @@ -19,9 +19,10 @@ RUN set -x &&\ rm /${APP}-${VERSION}.jar FROM eclipse-temurin:${JAVA_VERSION}-jre-alpine - +ARG APP_DIR=/app +WORKDIR ${APP_DIR} RUN addgroup -S hawkbit_group && adduser -D hawkbit -G hawkbit_group -RUN mkdir -p /artifactrepo && chown -R hawkbit /artifactrepo +RUN mkdir -p artifactrepo && chown -R hawkbit artifactrepo USER hawkbit ENV BUILD_DIR=/opt/hawkbit_build @@ -30,7 +31,7 @@ COPY --from=build ${BUILD_DIR}/spring-boot-loader/ ./ COPY --from=build ${BUILD_DIR}/snapshot-dependencies/ ./ COPY --from=build ${BUILD_DIR}/application/ ./ -VOLUME "/artifactrepo" +VOLUME /${APP_DIR}/artifactrepo ARG CONTAINER_PORT=8080 EXPOSE ${CONTAINER_PORT} diff --git a/docker/mysql/docker-compose-micro-services-dbinit-mysql.yml b/docker/mysql/docker-compose-micro-services-dbinit-mysql.yml index 6fd4f7e11..b63eebe95 100644 --- a/docker/mysql/docker-compose-micro-services-dbinit-mysql.yml +++ b/docker/mysql/docker-compose-micro-services-dbinit-mysql.yml @@ -91,7 +91,7 @@ services: - 'SPRING_RABBITMQ_USERNAME=guest' - 'SPRING_RABBITMQ_PASSWORD=guest' volumes: - - artifactrepo:/artifactrepo + - artifactrepo:/app/artifactrepo restart: always ports: - "8080:8080" diff --git a/docker/mysql/docker-compose-micro-services-mysql.yml b/docker/mysql/docker-compose-micro-services-mysql.yml index 1eb111072..64710d63f 100644 --- a/docker/mysql/docker-compose-micro-services-mysql.yml +++ b/docker/mysql/docker-compose-micro-services-mysql.yml @@ -67,7 +67,7 @@ services: - 'SPRING_RABBITMQ_USERNAME=guest' - 'SPRING_RABBITMQ_PASSWORD=guest' volumes: - - artifactrepo:/artifactrepo + - artifactrepo:/app/artifactrepo restart: always ports: - "8080:8080" diff --git a/docker/mysql/docker-compose-monolith-dbinit-mysql.yml b/docker/mysql/docker-compose-monolith-dbinit-mysql.yml index f788acb46..c7acc86eb 100644 --- a/docker/mysql/docker-compose-monolith-dbinit-mysql.yml +++ b/docker/mysql/docker-compose-monolith-dbinit-mysql.yml @@ -51,7 +51,7 @@ services: - 'SPRING_RABBITMQ_USERNAME=guest' - 'SPRING_RABBITMQ_PASSWORD=guest' volumes: - - artifactrepo:/artifactrepo + - artifactrepo:/app/artifactrepo restart: always ports: - "8080:8080" diff --git a/docker/mysql/docker-compose-monolith-mysql.yml b/docker/mysql/docker-compose-monolith-mysql.yml index 69103a54d..40f7fac67 100644 --- a/docker/mysql/docker-compose-monolith-mysql.yml +++ b/docker/mysql/docker-compose-monolith-mysql.yml @@ -27,7 +27,7 @@ services: - 'SPRING_RABBITMQ_USERNAME=guest' - 'SPRING_RABBITMQ_PASSWORD=guest' volumes: - - artifactrepo:/artifactrepo + - artifactrepo:/app/artifactrepo restart: always ports: - "8080:8080" diff --git a/docker/postgres/docker-compose-micro-services-dbinit-postgres.yml b/docker/postgres/docker-compose-micro-services-dbinit-postgres.yml index 81062d2e1..b585bd871 100644 --- a/docker/postgres/docker-compose-micro-services-dbinit-postgres.yml +++ b/docker/postgres/docker-compose-micro-services-dbinit-postgres.yml @@ -95,7 +95,7 @@ services: - 'SPRING_RABBITMQ_USERNAME=guest' - 'SPRING_RABBITMQ_PASSWORD=guest' volumes: - - artifactrepo:/artifactrepo + - artifactrepo:/app/artifactrepo restart: always ports: - "8080:8080" diff --git a/docker/postgres/docker-compose-micro-services-postgres.yml b/docker/postgres/docker-compose-micro-services-postgres.yml index 468b173b9..cbc11135e 100644 --- a/docker/postgres/docker-compose-micro-services-postgres.yml +++ b/docker/postgres/docker-compose-micro-services-postgres.yml @@ -70,7 +70,7 @@ services: - 'SPRING_RABBITMQ_USERNAME=guest' - 'SPRING_RABBITMQ_PASSWORD=guest' volumes: - - artifactrepo:/artifactrepo + - artifactrepo:/app/artifactrepo restart: always ports: - "8080:8080" diff --git a/docker/postgres/docker-compose-monolith-dbinit-postgres.yml b/docker/postgres/docker-compose-monolith-dbinit-postgres.yml index bf480937e..a45106085 100644 --- a/docker/postgres/docker-compose-monolith-dbinit-postgres.yml +++ b/docker/postgres/docker-compose-monolith-dbinit-postgres.yml @@ -53,7 +53,7 @@ services: - 'SPRING_RABBITMQ_USERNAME=guest' - 'SPRING_RABBITMQ_PASSWORD=guest' volumes: - - artifactrepo:/artifactrepo + - artifactrepo:/app/artifactrepo restart: always ports: - "8080:8080" diff --git a/docker/postgres/docker-compose-monolith-postgres.yml b/docker/postgres/docker-compose-monolith-postgres.yml index cda487928..288b539d0 100644 --- a/docker/postgres/docker-compose-monolith-postgres.yml +++ b/docker/postgres/docker-compose-monolith-postgres.yml @@ -28,7 +28,7 @@ services: - 'SPRING_RABBITMQ_USERNAME=guest' - 'SPRING_RABBITMQ_PASSWORD=guest' volumes: - - artifactrepo:/artifactrepo + - artifactrepo:/app/artifactrepo restart: always ports: - "8080:8080"