FROM golang:alpine AS builder # 为我们的镜像设置必要的环境变量 ENV GO111MODULE=on \ GOPROXY=https://goproxy.cn,direct \ CGO_ENABLED=0 \ GOOS=linux \ GOARCH=amd64 # 移动到工作目录:/build WORKDIR /build # 将代码复制到容器中 COPY . . # 将我们的代码编译成二进制可执行文件 app RUN go mod tidy && go build -o dash . ################### # 接下来创建一个小镜像 ################### FROM alpine WORKDIR /app # 从builder镜像中把静态文件拷贝到当前目录 COPY ./static . # 从builder镜像中把配置文件拷贝到当前目录 COPY ./config . # 从builder镜像中把/dist/app 拷贝到当前目录 COPY --from=builder /build/dash . # 需要运行的命令 ENTRYPOINT ["/app/dash"]