use multi-stage build for Docker images, decreasing the size by >80%
This commit is contained in:
parent
d5a03feb43
commit
b70e868a2d
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
# Start from a Debian image with the latest version of Go installed
|
# Start from a Debian image with the latest version of Go installed
|
||||||
# and a workspace (GOPATH) configured at /go.
|
# and a workspace (GOPATH) configured at /go.
|
||||||
FROM golang:1.10
|
FROM golang:1.10 AS build
|
||||||
|
|
||||||
# Copy the local package files to the container's workspace.
|
# Copy the local package files to the container's workspace.
|
||||||
ADD ./Gopkg.toml /go/src/github.com/boramalper/magnetico/
|
ADD ./Gopkg.toml /go/src/github.com/boramalper/magnetico/
|
||||||
@ -20,9 +20,9 @@ RUN make test-persistence
|
|||||||
RUN make test-magneticod
|
RUN make test-magneticod
|
||||||
RUN make magneticod
|
RUN make magneticod
|
||||||
|
|
||||||
# Run the outyet command by default when the container starts.
|
FROM alpine:latest
|
||||||
ENTRYPOINT ["/go/bin/magneticod"]
|
WORKDIR /
|
||||||
CMD []
|
COPY --from=build /go/bin/magneticod /magneticod
|
||||||
|
|
||||||
# Document that the service listens on port 8080.
|
# Run the outyet command by default when the container starts.
|
||||||
EXPOSE 8080
|
ENTRYPOINT ["/magneticod"]
|
||||||
|
@ -20,9 +20,12 @@ RUN make test-persistence
|
|||||||
RUN make test-magneticow
|
RUN make test-magneticow
|
||||||
RUN make magneticow
|
RUN make magneticow
|
||||||
|
|
||||||
|
FROM alpine:latest
|
||||||
|
WORKDIR /
|
||||||
|
COPY --from=build /go/bin/magneticow /magneticow
|
||||||
|
|
||||||
# Run the outyet command by default when the container starts.
|
# Run the outyet command by default when the container starts.
|
||||||
ENTRYPOINT ["/go/bin/magneticow"]
|
ENTRYPOINT ["/magneticow"]
|
||||||
CMD []
|
|
||||||
|
|
||||||
# Document that the service listens on port 8080.
|
# Document that the service listens on port 8080.
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
|
Loading…
Reference in New Issue
Block a user