docker: optimize build process for extended file

This commit is contained in:
Pavel Kiselyov 2018-05-11 10:03:15 +03:00
parent 0e2bb53460
commit 726c253eea
No known key found for this signature in database
GPG key ID: DC01375375DF1907

View file

@ -3,23 +3,17 @@ FROM golang:1.10-alpine as builder
RUN apk add --no-cache make gcc musl-dev linux-headers
ADD . /go-ethereum
RUN cd /go-ethereum && make all
# Pull all binaries into a second stage deploy alpine container
FROM alpine:latest
RUN apk add --no-cache ca-certificates
COPY --from=builder /go-ethereum/build/bin/geth /usr/local/bin/
# Pull golang directory and set related environment variables
COPY --from=builder /usr/local/go /usr/local/go
ENV GOPATH /go
ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH
RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH"
# Install dependencies for `go get`
RUN apk update && apk upgrade && \
apk add --no-cache bash git openssh mercurial bzr
ADD . /go-ethereum
RUN cd /go-ethereum && make all
# Pull all binaries into a second stage deploy alpine container
FROM builder
RUN apk add --no-cache ca-certificates
COPY --from=builder /go-ethereum/build/bin/* /usr/local/bin/
EXPOSE 8545 8546 30303 30303/udp