mirror of
https://github.com/kwinH/fastApi.git
synced 2024-08-12 07:41:28 +08:00
26 lines
733 B
Docker
26 lines
733 B
Docker
# stage 1: build src code to binary
|
|
FROM gobase as builder
|
|
|
|
ENV GOPROXY https://goproxy.cn
|
|
ENV GO111MODULE on
|
|
|
|
COPY ./ /app/
|
|
RUN cd /app && go mod tidy && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-s -w" -o main .
|
|
|
|
# stage 2: use alpine as base image
|
|
FROM alpine:3.10
|
|
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && \
|
|
apk update && \
|
|
apk --no-cache add tzdata ca-certificates && \
|
|
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
|
|
# apk del tzdata && \
|
|
rm -rf /var/cache/apk/*
|
|
|
|
|
|
COPY --from=builder /app/main /go/main
|
|
COPY ./config/settings.yml /go/config/settings.yml
|
|
|
|
WORKDIR /go
|
|
EXPOSE 8000
|
|
|
|
CMD ["/go/main","server","-c", "/go/config/settings.yml"] |