# 使用官方的 Go 编译器镜像作为基础镜像
FROM golang:alpine AS builder

# 设置工作目录
WORKDIR /src

# 复制 go.mod 和 go.sum 文件到工作目录(确保模块依赖可以被解析)
COPY go.mod ./

# 下载依赖项(这一步是可选的,但推荐在构建之前显式地解决依赖)
RUN go mod download

# 复制 app.go 文件到工作目录
COPY app.go ./

# 构建应用
RUN go build -o app .

# 使用更小的基础镜像来运行应用
FROM alpine:latest

# 设置工作目录
WORKDIR /root/

# 复制构建阶段生成的可执行文件到工作目录
COPY --from=builder /src/app ./

# 设置应用为容器启动时执行的命令
CMD ["./app"]

 

posted on 2024-12-17 21:39  towboat  阅读(24)  评论(0)    收藏  举报