Skip to content

Commit

Permalink
Decrease docker image size by 200MB
Browse files Browse the repository at this point in the history
Copying and then deleting the docker directory in 2 steps (therefore,
layers) means the docker directory is still present in the previous
layer.

We uncompress the docker.tgz in the /tmp directory to be able to copy
the docker binaries directly to their target destination.
  • Loading branch information
duboisf committed Nov 22, 2024
1 parent c46dac6 commit 4e042a3
Showing 1 changed file with 2 additions and 3 deletions.
5 changes: 2 additions & 3 deletions images/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ RUN export RUNNER_ARCH=${TARGETARCH} \
&& if [ "$RUNNER_ARCH" = "amd64" ]; then export DOCKER_ARCH=x86_64 ; fi \
&& if [ "$RUNNER_ARCH" = "arm64" ]; then export DOCKER_ARCH=aarch64 ; fi \
&& curl -fLo docker.tgz https://download.docker.com/${TARGETOS}/static/stable/${DOCKER_ARCH}/docker-${DOCKER_VERSION}.tgz \
&& tar zxvf docker.tgz \
&& tar -C /tmp -zxvf docker.tgz \
&& rm -rf docker.tgz \
&& mkdir -p /usr/local/lib/docker/cli-plugins \
&& curl -fLo /usr/local/lib/docker/cli-plugins/docker-buildx \
Expand Down Expand Up @@ -61,7 +61,6 @@ WORKDIR /home/runner

COPY --chown=runner:docker --from=build /actions-runner .
COPY --from=build /usr/local/lib/docker/cli-plugins/docker-buildx /usr/local/lib/docker/cli-plugins/docker-buildx

RUN install -o root -g root -m 755 docker/* /usr/bin/ && rm -rf docker
COPY --chown=root:root --chmod=755 --from=build /tmp/docker/* /usr/bin/

USER runner

0 comments on commit 4e042a3

Please sign in to comment.