docker_practice/image/demo/multistage-builds/Dockerfile

22 lines
388 B
Go
Raw Normal View History

2021-03-11 15:09:37 +00:00
FROM golang:alpine as builder
2017-11-24 10:37:38 +00:00
2017-11-24 10:36:30 +00:00
RUN apk --no-cache add git
2017-11-24 10:37:38 +00:00
2017-11-24 10:36:30 +00:00
WORKDIR /go/src/github.com/go/helloworld/
2017-11-24 10:37:38 +00:00
2017-11-24 10:36:30 +00:00
RUN go get -d -v github.com/go-sql-driver/mysql
2017-11-24 10:37:38 +00:00
2017-11-24 10:36:30 +00:00
COPY app.go .
2017-11-24 10:37:38 +00:00
2017-11-24 10:36:30 +00:00
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
FROM alpine:latest as prod
2017-11-24 10:37:38 +00:00
2017-11-24 10:36:30 +00:00
RUN apk --no-cache add ca-certificates
2017-11-24 10:37:38 +00:00
2017-11-24 10:36:30 +00:00
WORKDIR /root/
2017-11-24 10:37:38 +00:00
2017-11-24 10:36:30 +00:00
COPY --from=0 /go/src/github.com/go/helloworld/app .
2017-11-24 10:37:38 +00:00
2017-11-24 10:36:30 +00:00
CMD ["./app"]