-
Notifications
You must be signed in to change notification settings - Fork 367
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Make intermediate images share more common layers (#5960)
By sharing more common layers, the total time can be reduced by about 15s. Signed-off-by: Quan Tian <[email protected]>
- Loading branch information
Showing
9 changed files
with
46 additions
and
21 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -24,13 +24,14 @@ RUN go mod download | |
|
||
COPY . /antrea | ||
|
||
RUN make antrea-agent antrea-cni antrea-agent-instr-binary | ||
# Disable CGO for antctl in case it is copied outside of the container image. It | ||
# also reduces the size of the binary and aligns with how we distribute antctl | ||
# in release assets. | ||
RUN CGO_ENABLED=0 make antctl-linux antctl-instr-binary | ||
RUN mv bin/antctl-linux bin/antctl | ||
|
||
RUN make antrea-agent antrea-cni antrea-agent-instr-binary | ||
|
||
FROM antrea/base-ubuntu:${BUILD_TAG} | ||
|
||
LABEL maintainer="Antrea <[email protected]>" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -46,16 +46,17 @@ RUN --mount=type=cache,target=/go/pkg/mod/ \ | |
|
||
COPY . /antrea | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-agent antrea-cni | ||
# Disable CGO for antctl in case it is copied outside of the container image. It | ||
# also reduces the size of the binary and aligns with how we distribute antctl | ||
# in release assets. | ||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
CGO_ENABLED=0 make antctl-linux && mv bin/antctl-linux bin/antctl | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-agent antrea-cni | ||
|
||
FROM antrea/base-ubi:${BUILD_TAG} | ||
|
||
LABEL maintainer="Antrea <[email protected]>" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -25,16 +25,17 @@ RUN --mount=type=cache,target=/go/pkg/mod/ \ | |
|
||
COPY . /antrea | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-agent antrea-cni | ||
# Disable CGO for antctl in case it is copied outside of the container image. It | ||
# also reduces the size of the binary and aligns with how we distribute antctl | ||
# in release assets. | ||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
CGO_ENABLED=0 make antctl-linux && mv bin/antctl-linux bin/antctl | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-agent antrea-cni | ||
|
||
FROM antrea/base-ubuntu:${BUILD_TAG} | ||
|
||
LABEL maintainer="Antrea <[email protected]>" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -24,13 +24,14 @@ RUN go mod download | |
|
||
COPY . /antrea | ||
|
||
RUN make antrea-controller antrea-controller-instr-binary | ||
# Disable CGO for antctl in case it is copied outside of the container image. It | ||
# also reduces the size of the binary and aligns with how we distribute antctl | ||
# in release assets. | ||
RUN CGO_ENABLED=0 make antctl-linux antctl-instr-binary | ||
RUN mv bin/antctl-linux bin/antctl | ||
|
||
RUN make antrea-controller antrea-controller-instr-binary | ||
|
||
FROM ubuntu:22.04 | ||
|
||
LABEL maintainer="Antrea <[email protected]>" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -46,16 +46,17 @@ RUN --mount=type=cache,target=/go/pkg/mod/ \ | |
|
||
COPY . /antrea | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-controller | ||
# Disable CGO for antctl in case it is copied outside of the container image. It | ||
# also reduces the size of the binary and aligns with how we distribute antctl | ||
# in release assets. | ||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
CGO_ENABLED=0 make antctl-linux && mv bin/antctl-linux bin/antctl | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-controller | ||
|
||
FROM ubuntu:22.04 | ||
|
||
LABEL maintainer="Antrea <[email protected]>" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -25,16 +25,17 @@ RUN --mount=type=cache,target=/go/pkg/mod/ \ | |
|
||
COPY . /antrea | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-controller | ||
# Disable CGO for antctl in case it is copied outside of the container image. It | ||
# also reduces the size of the binary and aligns with how we distribute antctl | ||
# in release assets. | ||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
CGO_ENABLED=0 make antctl-linux && mv bin/antctl-linux bin/antctl | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-controller | ||
|
||
FROM ubuntu:22.04 | ||
|
||
LABEL maintainer="Antrea <[email protected]>" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -24,13 +24,18 @@ RUN go mod download | |
|
||
COPY . /antrea | ||
|
||
RUN make antrea-agent antrea-controller antrea-cni antrea-controller-instr-binary antrea-agent-instr-binary | ||
# Disable CGO for antctl in case it is copied outside of the container image. It | ||
# also reduces the size of the binary and aligns with how we distribute antctl | ||
# in release assets. | ||
RUN CGO_ENABLED=0 make antctl-linux antctl-instr-binary | ||
RUN mv bin/antctl-linux bin/antctl | ||
|
||
# Build antrea-agent and antrea-cni first in order to share an extra layer with | ||
# build/images/Dockerfile.build.agent.coverage. | ||
RUN make antrea-agent antrea-cni antrea-agent-instr-binary | ||
|
||
RUN make antrea-controller antrea-controller-instr-binary | ||
|
||
FROM antrea/base-ubuntu:${BUILD_TAG} | ||
|
||
LABEL maintainer="Antrea <[email protected]>" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -46,16 +46,23 @@ RUN --mount=type=cache,target=/go/pkg/mod/ \ | |
|
||
COPY . /antrea | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-agent antrea-controller antrea-cni | ||
# Disable CGO for antctl in case it is copied outside of the container image. It | ||
# also reduces the size of the binary and aligns with how we distribute antctl | ||
# in release assets. | ||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
CGO_ENABLED=0 make antctl-linux && mv bin/antctl-linux bin/antctl | ||
|
||
# Build antrea-agent and antrea-cni first in order to share an extra layer with | ||
# build/images/Dockerfile.build.agent.ubi. | ||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-agent antrea-cni | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-controller | ||
|
||
FROM antrea/base-ubi:${BUILD_TAG} | ||
|
||
LABEL maintainer="Antrea <[email protected]>" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -25,16 +25,23 @@ RUN --mount=type=cache,target=/go/pkg/mod/ \ | |
|
||
COPY . /antrea | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-agent antrea-controller antrea-cni | ||
# Disable CGO for antctl in case it is copied outside of the container image. It | ||
# also reduces the size of the binary and aligns with how we distribute antctl | ||
# in release assets. | ||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
CGO_ENABLED=0 make antctl-linux && mv bin/antctl-linux bin/antctl | ||
|
||
# Build antrea-agent and antrea-cni first in order to share an extra layer with | ||
# build/images/Dockerfile.build.agent.ubuntu. | ||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-agent antrea-cni | ||
|
||
RUN --mount=type=cache,target=/go/pkg/mod/ \ | ||
--mount=type=cache,target=/root/.cache/go-build/ \ | ||
make antrea-controller | ||
|
||
FROM antrea/base-ubuntu:${BUILD_TAG} | ||
|
||
LABEL maintainer="Antrea <[email protected]>" | ||
|