From e758fb800befc36185b49f7ab8c21223ff476d8c Mon Sep 17 00:00:00 2001 From: EXEC <execvy@gmail.com> Date: Mon, 2 May 2022 12:55:16 +0800 Subject: [PATCH] Speed up docker image build by use layer cache (#4038) * speed up docker image build by use layer cache * rearrenge Dockerfile * enable docker layer cache in github action --- .github/workflows/ci.yml | 7 +++++++ Dockerfile | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 76ab6cf18e..7cc7322187 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -76,4 +76,11 @@ jobs: steps: - uses: actions/checkout@v3 - run: git submodule update --init --recursive --force + + # In this step, this action saves a list of existing images, + # the cache is created without them in the post run. + # It also restores the cache if it exists. + - uses: satackey/action-docker-layer-caching@v0.0.11 + continue-on-error: false + - run: docker build . diff --git a/Dockerfile b/Dockerfile index a9836e39f3..52f6848a82 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,6 +4,13 @@ FROM docker.io/library/golang:1.18-alpine3.15 AS builder RUN apk --no-cache add make gcc g++ linux-headers git bash ca-certificates libgcc libstdc++ WORKDIR /app + +# Get dependencies - will also be cached if we won't change go.mod/go.sum +COPY go.mod . +COPY go.sum . +RUN go mod download + + ADD . . RUN make erigon rpcdaemon integration sentry txpool downloader hack observer db-tools -- GitLab