# 使用 Golang 镜像作为构建阶段 FROM golang:alpine AS builder # 设置环境变量 ENV GO111MODULE=on \ CGO_ENABLED=0 \ GOOS=linux \ GOARCH=amd64 # 设置工作目录 WORKDIR /build # 安装必要工具并克隆代码 RUN apk add --no-cache git && \ git clone https://github.com/deanxv/genspark2api.git . && \ git fetch --all && \ git checkout main && \ git pull origin main && \ # 修改 API 路由路径 sed -i 's|router.Group("/v1")|router.Group("/hf/v1")|' router/api-router.go # 下载依赖并构建 RUN go mod download && \ go build -ldflags="-s -w" -o /genspark2api # 使用 Alpine 作为运行时镜像 FROM alpine:latest # 设置时区和证书 RUN apk --no-cache add ca-certificates tzdata && \ cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ echo "Asia/Shanghai" > /etc/timezone # 创建必要的目录 RUN mkdir -p /app/genspark2api/data && \ chmod -R 755 /app # 从构建阶段复制可执行文件 COPY --from=builder /genspark2api /app/genspark2api/ # 设置工作目录 WORKDIR /app/genspark2api/data # 设置启动命令 ENTRYPOINT ["/app/genspark2api/genspark2api"]