diff --git a/Dockerfile b/Dockerfile index 1e0d8f56..33113d67 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,19 +1,30 @@ -FROM eclipse-temurin:21.0.11_10-jre-noble +FROM eclipse-temurin:21.0.12_8-jre-noble AS extractor ARG jar RUN test -n "$jar" +WORKDIR /extractor + +COPY $jar iexec-core.jar + +RUN java -Djarmode=tools -jar iexec-core.jar extract --layers + +FROM eclipse-temurin:21.0.12_8-jre-noble + RUN apt-get update \ - && apt-get install -y --no-install-recommends curl \ + && apt-get upgrade --no-install-recommends -y \ && rm -rf /var/lib/apt/lists/* -RUN groupadd --system appuser \ - && useradd -g appuser -s /sbin/nologin -c "Docker image user" appuser +RUN groupadd -g 1001 appuser \ + && useradd -g 1001 --no-create-home -s /sbin/nologin -u 1001 appuser -WORKDIR /app -COPY $jar iexec-core.jar -RUN chown -R appuser:appuser /app +RUN install -d -g 1001 -o 1001 /app -USER appuser +COPY --from=extractor --chown=1001:1001 /extractor/iexec-core/dependencies/ /app +COPY --from=extractor --chown=1001:1001 /extractor/iexec-core/snapshot-dependencies/ /app +COPY --from=extractor --chown=1001:1001 /extractor/iexec-core/application/ /app + +USER 1001 +WORKDIR /app ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "iexec-core.jar"]