From: Singal, Kapil (ks220y) Date: Mon, 22 Mar 2021 00:33:50 +0000 (-0400) Subject: Refactoring DockerFile for multistage build X-Git-Tag: 1.2.0~38 X-Git-Url: https://gerrit.onap.org/r/gitweb?p=ccsdk%2Fdistribution.git;a=commitdiff_plain;h=9558e243855606a3fc617d6629fb40bb9766bf1e;hp=2b91b0229dce35744d0604fdd129d4adff3637aa Refactoring DockerFile for multistage build Tested locally and it reduced 2 layers and image size by approx 100MBs Issue-ID: CCSDK-3226 Signed-off-by: Singal, Kapil (ks220y) Change-Id: I478996f9eb91f92fb385593d0f090787cfefcb8d --- diff --git a/opendaylight/aluminum/aluminum-alpine/src/main/docker/Dockerfile b/opendaylight/aluminum/aluminum-alpine/src/main/docker/Dockerfile index 9ef70db1..c4cced8a 100644 --- a/opendaylight/aluminum/aluminum-alpine/src/main/docker/Dockerfile +++ b/opendaylight/aluminum/aluminum-alpine/src/main/docker/Dockerfile @@ -1,10 +1,11 @@ -FROM onap/ccsdk-alpine-j11-image:${project.docker.latestfulltag.version} -MAINTAINER CCSDK Team (onap-ccsdk@lists.onap.org) +# Prepare stage for multistage image build +## START OF STAGE0 ## +FROM onap/ccsdk-alpine-j11-image:${project.docker.latestfulltag.version} AS stage0 +USER root ENV ODL_HOME /opt/opendaylight/current # copy the opendaylight tar and expand -USER root COPY ${odl.karaf.artifactId}-${ccsdk.opendaylight.version}.tar.gz /tmp/ RUN mkdir -p /opt/odl \ && tar zxvf /tmp/${odl.karaf.artifactId}-${ccsdk.opendaylight.version}.tar.gz --directory /opt/odl \ @@ -19,6 +20,18 @@ COPY system $ODL_HOME/system #COPY configure_cluster.sh configure-cluster-ipdetect.sh custom_shard_config.txt set_persistence.sh $ODL_HOME/bin/ #RUN chmod 755 $ODL_HOME/bin/configure_cluster.sh $ODL_HOME/bin/configure-cluster-ipdetect.sh $ODL_HOME/bin/set_persistence.sh $ODL_HOME/bin/custom_shard_config.txt +## END OF STAGE0 ## + + +## This will create actual image +FROM onap/ccsdk-alpine-j11-image:${project.docker.latestfulltag.version} +MAINTAINER CCSDK Team (onap-ccsdk@lists.onap.org) +USER root + +ENV ODL_HOME /opt/opendaylight/current + +COPY --from=stage0 /opt /opt + # ENTRYPOINT exec /opt/opendaylight/bin/karaf WORKDIR $ODL_HOME USER onap