Dockerfile 694 B

12345678910111213141516171819202122232425262728293031323334
  1. # 使用官方的 Go 镜像作为基础镜像
  2. FROM golang:1.20 AS builder
  3. # 设置工作目录
  4. WORKDIR /app
  5. # 将 go.mod 和 go.sum 复制到容器中
  6. COPY go.mod go.sum ./
  7. # 下载依赖
  8. RUN go mod download
  9. # 将项目代码复制到容器中
  10. COPY . .
  11. # 构建可执行文件
  12. RUN go build -o main cmd/main.go
  13. # 使用轻量级的基础镜像运行
  14. FROM alpine:latest
  15. # 设置工作目录
  16. WORKDIR /app
  17. # 将编译出的可执行文件和其他必要文件复制到运行镜像中
  18. COPY --from=builder /app/main .
  19. COPY config.yaml .
  20. COPY data/json_files ./data/json_files
  21. # 暴露服务端口(根据你的服务监听端口配置)
  22. EXPOSE 8080
  23. # 运行服务
  24. CMD ["./main", "server"]