diff options
author | danielhanrahan <daniel.hanrahan@est.tech> | 2022-07-11 18:14:13 +0100 |
---|---|---|
committer | danielhanrahan <daniel.hanrahan@est.tech> | 2022-07-13 12:37:25 +0100 |
commit | cd21359e340ef8e8b8ff0c9c2b9cd385b02de506 (patch) | |
tree | 74bc47731bbff5f69c294df8f4967430e101c949 /packages/policy-clamp-docker/src/main/docker/AcmRuntime-Suse.Dockerfile | |
parent | d0db79ad9ae0446bba6b5f5dbc6f51c34d7fb4d2 (diff) |
Reduce size of docker images for CLAMP
Avoid creating extra layers when extracting tarball
Remove redundant chown commands
Reduce sizes of Alpine images by 27%
Reduce sizes of OpenSuse images by 20%
Issue-ID: POLICY-4277
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: If772bb944864d404ceba5ff66be7d613128835a1
Diffstat (limited to 'packages/policy-clamp-docker/src/main/docker/AcmRuntime-Suse.Dockerfile')
-rw-r--r-- | packages/policy-clamp-docker/src/main/docker/AcmRuntime-Suse.Dockerfile | 28 |
1 files changed, 12 insertions, 16 deletions
diff --git a/packages/policy-clamp-docker/src/main/docker/AcmRuntime-Suse.Dockerfile b/packages/policy-clamp-docker/src/main/docker/AcmRuntime-Suse.Dockerfile index a521d0425..992735855 100644 --- a/packages/policy-clamp-docker/src/main/docker/AcmRuntime-Suse.Dockerfile +++ b/packages/policy-clamp-docker/src/main/docker/AcmRuntime-Suse.Dockerfile @@ -18,9 +18,11 @@ # ============LICENSE_END========================================================= #------------------------------------------------------------------------------- -# -# Docker file to build an image that runs the CLAMP ACM runtime on Java 11 or better in OpenSuse -# +FROM busybox AS tarball +RUN mkdir /packages /extracted +COPY /maven/lib/policy-clamp-runtime-acm.tar.gz /packages/ +RUN tar xvzf /packages/policy-clamp-runtime-acm.tar.gz --directory /extracted/ + FROM opensuse/leap:15.4 LABEL maintainer="Policy Team" @@ -40,26 +42,20 @@ ENV POLICY_HOME=/opt/app/policy/clamp ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 ENV JAVA_HOME=/usr/lib64/jvm/java-11-openjdk-11 -RUN zypper -n -q install --no-recommends gzip java-11-openjdk-headless netcat-openbsd tar && \ +RUN zypper -n -q install --no-recommends java-11-openjdk-headless netcat-openbsd && \ zypper -n -q update && zypper -n -q clean --all && \ groupadd --system policy && \ useradd --system --shell /bin/sh -G policy policy && \ - mkdir -p /app $POLICY_LOGS $POLICY_HOME $POLICY_HOME/bin && \ - chown -R policy:policy /app $POLICY_HOME $POLICY_LOGS && \ - mkdir /packages - -COPY /maven/lib/policy-clamp-runtime-acm.tar.gz /packages + mkdir -p $POLICY_HOME $POLICY_LOGS && \ + chown -R policy:policy $POLICY_HOME $POLICY_LOGS -RUN tar xvfz /packages/policy-clamp-runtime-acm.tar.gz --directory $POLICY_HOME && \ - rm /packages/policy-clamp-runtime-acm.tar.gz +COPY --chown=policy:policy --from=tarball /extracted $POLICY_HOME WORKDIR $POLICY_HOME -COPY acm-runtime.sh bin/. -COPY /maven/policy-clamp-runtime-acm.jar /app/app.jar +COPY --chown=policy:policy acm-runtime.sh bin/ +COPY --chown=policy:policy /maven/policy-clamp-runtime-acm.jar /app/app.jar -RUN chown -R policy:policy * && \ - chmod 755 bin/*.sh && \ - chown -R policy:policy /app +RUN chmod 755 bin/*.sh EXPOSE 6969 |