2025-04-24 16:40:55 +03:00
|
|
|
# set Java
|
2026-02-09 09:09:24 +02:00
|
|
|
ARG JAVA_VERSION=21.0.10_7
|
2025-11-12 16:51:51 +02:00
|
|
|
FROM eclipse-temurin:${JAVA_VERSION}-jre-alpine AS build
|
2025-11-19 15:44:15 +02:00
|
|
|
WORKDIR /app
|
2025-04-24 16:40:55 +03:00
|
|
|
ARG HAWKBIT_APP=hawkbit-repository-jpa-init
|
|
|
|
|
ARG HAWKBIT_VERSION=0-SNAPSHOT
|
|
|
|
|
|
|
|
|
|
ENV APP=${HAWKBIT_APP}
|
|
|
|
|
ENV VERSION=${HAWKBIT_VERSION}
|
|
|
|
|
|
|
|
|
|
RUN addgroup -S hawkbit_group && adduser -D hawkbit -G hawkbit_group
|
2025-11-19 15:44:15 +02:00
|
|
|
RUN mkdir -p artifactrepo && chown -R hawkbit artifactrepo
|
2025-04-24 16:40:55 +03:00
|
|
|
USER hawkbit
|
|
|
|
|
|
2025-11-19 15:44:15 +02:00
|
|
|
COPY org/eclipse/hawkbit/${APP}/${VERSION}/${APP}-${VERSION}.jar ${APP}-${VERSION}.jar
|
2025-04-24 16:40:55 +03:00
|
|
|
|
|
|
|
|
ARG X_MS=256m
|
|
|
|
|
ENV X_MS=${X_MS}
|
|
|
|
|
ARG X_MX=256m
|
|
|
|
|
ENV X_MX=${X_MX}
|
|
|
|
|
ARG XX_MAX_METASPACE_SIZE=1150m
|
|
|
|
|
ENV XX_MAX_METASPACE_SIZE=${XX_MAX_METASPACE_SIZE}
|
|
|
|
|
ARG XX_METASPACE_SIZE=115m
|
|
|
|
|
ENV XX_METASPACE_SIZE=${XX_METASPACE_SIZE}
|
|
|
|
|
ARG XSS=150K
|
|
|
|
|
ENV XSS=${XSS}
|
|
|
|
|
ARG GC=G1
|
|
|
|
|
ENV GC=${GC}
|
|
|
|
|
ARG AND_THEN="exit 0"
|
|
|
|
|
ENV AND_THEN=${AND_THEN}
|
|
|
|
|
|
2025-11-19 15:44:15 +02:00
|
|
|
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}"]
|