* Fix simple UI docker image Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * Change workdir only when necessary Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * artifactrepo also in /app Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * add also /app in volume config Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * fix artifact repo to be in /app and also fix volumes in docker compose Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * Delete hawkbit-simple-ui/src/main/java/org/eclipse/hawkbit/ui/simple/config/AtmosphereConfig.java Signed-off-by: Stanislav Trailov <stanislav.trailov@bosch.com> * remove changes from download&install phase only Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * fix volume for postgres compose files Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * switch back to /app workspace also in db init * finalize absolut paths in db init dockerfiles * artifactrepo to relative path Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * use relative path in dbinit dockerfiles Signed-off-by: strailov <Stanislav.Trailov@bosch.io> --------- Signed-off-by: strailov <Stanislav.Trailov@bosch.io> Signed-off-by: Stanislav Trailov <stanislav.trailov@bosch.com>
55 lines
1.8 KiB
Plaintext
55 lines
1.8 KiB
Plaintext
# set Java
|
|
ARG JAVA_VERSION=21.0.9_10
|
|
# extracts spring layers from the app jar (to optimize boot)
|
|
FROM eclipse-temurin:${JAVA_VERSION}-jre-alpine AS build
|
|
|
|
ARG HAWKBIT_APP=hawkbit-update-server
|
|
ARG HAWKBIT_VERSION=0-SNAPSHOT
|
|
|
|
ENV BUILD_DIR=/opt/hawkbit_build
|
|
ENV APP=${HAWKBIT_APP}
|
|
ENV VERSION=${HAWKBIT_VERSION}
|
|
|
|
COPY org/eclipse/hawkbit/${APP}/${VERSION}/${APP}-${VERSION}.jar ${APP}-${VERSION}.jar
|
|
|
|
RUN set -x &&\
|
|
mkdir -p ${BUILD_DIR} &&\
|
|
cd ${BUILD_DIR} &&\
|
|
java -Djarmode=tools -jar /${APP}-${VERSION}.jar extract --layers --launcher --destination . &&\
|
|
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
|
|
USER hawkbit
|
|
|
|
ENV BUILD_DIR=/opt/hawkbit_build
|
|
COPY --from=build ${BUILD_DIR}/dependencies/ ./
|
|
COPY --from=build ${BUILD_DIR}/spring-boot-loader/ ./
|
|
COPY --from=build ${BUILD_DIR}/snapshot-dependencies/ ./
|
|
COPY --from=build ${BUILD_DIR}/application/ ./
|
|
|
|
VOLUME /${APP_DIR}/artifactrepo
|
|
|
|
ARG CONTAINER_PORT=8080
|
|
EXPOSE ${CONTAINER_PORT}
|
|
|
|
ARG PROFILES=h2
|
|
ENV PROFILES=${PROFILES}
|
|
ARG X_MS=768m
|
|
ENV X_MS=${X_MS}
|
|
ARG X_MX=768m
|
|
ENV X_MX=${X_MX}
|
|
ARG XX_MAX_METASPACE_SIZE=250m
|
|
ENV XX_MAX_METASPACE_SIZE=${XX_MAX_METASPACE_SIZE}
|
|
ARG XX_METASPACE_SIZE=250m
|
|
ENV XX_METASPACE_SIZE=${XX_METASPACE_SIZE}
|
|
ARG XSS=300K
|
|
ENV XSS=${XSS}
|
|
ARG GC=G1
|
|
ENV GC=${GC}
|
|
|
|
ENTRYPOINT ["sh", "-c", "java ${JAVA_OPTS} -Dspring.profiles.active=${PROFILES} -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.springframework.boot.loader.launch.JarLauncher ${@}"]
|