38 lines
650 B
Docker
38 lines
650 B
Docker
FROM golang:alpine AS build
|
|
|
|
LABEL stage=gobuilder
|
|
|
|
WORKDIR /app
|
|
|
|
ENV CGO_ENABLED 0
|
|
ENV GOOS linux
|
|
ENV GOPROXY https://goproxy.cn,direct
|
|
|
|
ADD go.mod .
|
|
ADD go.sum .
|
|
RUN go mod download
|
|
|
|
COPY . .
|
|
RUN go build -o main main.go
|
|
|
|
FROM alpine
|
|
|
|
WORKDIR /app
|
|
|
|
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories && \
|
|
apk --update add tzdata && \
|
|
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
|
|
echo "Asia/Shanghai" > /etc/timezone && \
|
|
apk del tzdata && \
|
|
rm -rf /var/cache/apk/*
|
|
|
|
COPY conf ./conf
|
|
|
|
COPY --from=build /app/main /app/main
|
|
|
|
ENV GIN_ENV=production
|
|
|
|
EXPOSE 8000
|
|
|
|
ENTRYPOINT ["/app/main"]
|