| # 使用官方Golang镜像 | |
| FROM golang:1.23-alpine AS build | |
| # 安装git | |
| RUN apk add --no-cache git | |
| # 设置工作目录 | |
| WORKDIR /app | |
| # 克隆项目仓库 | |
| RUN git clone https://github.com/jianglinzhang/gemini-antiblock-go.git . | |
| # Copy go.mod and go.sum files first for better caching | |
| # COPY go.mod go.sum* ./ | |
| # 下载依赖 | |
| RUN go mod download | |
| # 构建应用 | |
| RUN CGO_ENABLED=0 GOOS=linux go build -o main ./main.go | |
| # 创建最小化生产镜像 | |
| FROM alpine:latest | |
| # 创建app目录 | |
| WORKDIR /app | |
| # 从构建阶段复制二进制文件 | |
| COPY --from=build /app/main . | |
| # 暴露端口 | |
| EXPOSE 8080 | |
| # 运行可执行文件 | |
| CMD ["./main"] |