# 第一阶段:编译 FROM golang:1.21-alpine AS builder # 设置工作目录 WORKDIR /app # 复制依赖文件并下载 COPY go.mod ./ # 如果你有 go.sum 文件,请取消下面一行的注释 # COPY go.sum ./ RUN go mod download # 复制源代码 COPY . . # 编译程序 (对应你的本地构建指令) # 这里的 -o main 表示输出文件名为 main RUN go build -o main ./cmd/notion2api # 第二阶段:运行 FROM alpine:latest WORKDIR /app # 从编译阶段复制二进制文件 COPY --from=builder /app/main . # 复制配置文件 (对应你的 --config .\config.example.json) COPY --from=builder /app/config.example.json ./config.json # Hugging Face Space 默认暴露 7860 端口 # 请确保你的程序读取 PORT 环境变量,或者在这里强制指定 ENV PORT=7860 # 运行程序 # 注意:你需要确认你的程序是否能通过命令行参数或环境变量读取配置 # 这里假设我们将 config.example.json 重命名为 config.json 使用 CMD ["./main", "--config", "config.json"]