openai-api-proxy / Dockerfile
Jack698's picture
Upload folder using huggingface_hub
cc3fa57 verified
# 多阶段构建 Dockerfile,适用于 Hugging Face Spaces
# 第一阶段:构建 Go 应用
FROM golang:1.23-alpine AS builder
# 安装必要的工具
RUN apk add --no-cache git ca-certificates
# 设置工作目录
WORKDIR /app
# 复制 go mod 文件
COPY go.mod go.sum ./
# 下载依赖
RUN go mod download
# 复制源代码
COPY . .
# 构建 Go 应用(禁用 CGO)
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o main .
# 第二阶段:运行时镜像
FROM alpine:latest
# 安装 ca-certificates(用于 HTTPS)
RUN apk --no-cache add ca-certificates tzdata
# 设置时区
ENV TZ=Asia/Shanghai
# 创建非 root 用户
RUN addgroup -g 1000 appgroup && adduser -u 1000 -G appgroup -s /bin/sh -D appuser
# 设置工作目录
WORKDIR /app
# 从构建阶段复制二进制文件
COPY --from=builder /app/main .
# 切换到非 root 用户
USER appuser
# 暴露端口(Hugging Face Spaces 默认端口)
EXPOSE 7860
# 启动命令
CMD ["./main"]