28 lines
484 B
Docker
28 lines
484 B
Docker
# 构建 Go 服务
|
|
FROM golang:1.21-alpine AS go-builder
|
|
|
|
WORKDIR /usr/src/app
|
|
|
|
# 安装必要的构建工具
|
|
RUN apk add --no-cache gcc musl-dev
|
|
|
|
# 复制 Go 项目文件
|
|
COPY . .
|
|
|
|
# 构建 Go 服务
|
|
RUN go build -o main ./main.go
|
|
|
|
# 运行阶段
|
|
FROM alpine:latest
|
|
|
|
WORKDIR /usr/src/app
|
|
|
|
# 从构建阶段复制编译好的二进制文件
|
|
COPY --from=go-builder /usr/src/app/main .
|
|
|
|
# 暴露端口(根据你的 API 服务端口修改)
|
|
EXPOSE 8080
|
|
|
|
# 运行服务
|
|
CMD ["./main"]
|