nonotion / Dockerfile
f2d90b38's picture
Create Dockerfile
a372294 verified
Raw
History Blame Contribute Delete
1.03 kB
# 第一阶段:编译
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"]