# Compose runtime variables (package image deployment)
BACKEND_PORT=5150
FRONTEND_PORT=4321
ADMIN_PORT=4322

# frontend SSR 服务端访问 backend 用这个内部地址（compose 默认可直接使用）
INTERNAL_API_BASE_URL=http://backend:5150/api

# 浏览器里评论 / AI 问答 / 搜索等请求优先读取这个公开 API 地址。
# 如果留空，frontend 会在生产环境按“当前访问主机 + :5150/api”回退。
# 走反向代理时建议显式设置，例如：
# PUBLIC_API_BASE_URL=https://your-frontend.example.com/api
PUBLIC_API_BASE_URL=

# 前台 /_img 图片优化端点默认只放行“当前站点同域”图片。
# 如果你的文章封面或对象存储图片来自额外 CDN / R2 公网域名，
# 可以在这里填逗号分隔的 host 列表，例如：
# PUBLIC_IMAGE_ALLOWED_HOSTS=cdn.example.com,pub-xxxx.r2.dev
PUBLIC_IMAGE_ALLOWED_HOSTS=

# admin 浏览器请求 backend API 优先读取这个公开地址。
# 如果留空，admin 会在生产环境按“当前访问主机 + :5150”回退。
# 如果你采用推荐方案（admin 域名同域转发 /api 到 backend），
# 建议直接填后台域名 origin，例如：
# ADMIN_API_BASE_URL=https://admin.example.com
ADMIN_API_BASE_URL=

# admin 页面里的“打开前台 / AI 问答 / 文章预览”链接优先读取这个运行时变量。
# 如果你不是直接把前台暴露在 http://<host>:4321，而是走独立域名 / HTTPS / 反向代理，
# 建议设置为正式前台地址，例如：
# ADMIN_FRONTEND_BASE_URL=https://your-frontend.example.com
ADMIN_FRONTEND_BASE_URL=

APP_BASE_URL=http://localhost:5150
DATABASE_URL=postgres://<user>:<password>@<external-db-host>:5432/termi_api
REDIS_URL=redis://<external-redis-host>:6379
JWT_SECRET=change-me-before-production
JWT_EXPIRATION_SECONDS=604800
RUST_LOG=info

# 邮件确认 / 通知投递需要 SMTP
SMTP_ENABLE=false
SMTP_HOST=localhost
SMTP_PORT=1025
SMTP_SECURE=false
SMTP_USER=
SMTP_PASSWORD=
SMTP_HELLO_NAME=

# 启用 TinyAuth / Pocket ID / Caddy forward_auth 时建议：
# - TERMI_ADMIN_TRUST_PROXY_AUTH=true
# - TERMI_ADMIN_LOCAL_LOGIN_ENABLED=false
# - 额外配置一个共享密钥，并在 Caddy 转发 /api 到 backend 时附带：
#   X-Termi-Proxy-Secret: {$TERMI_ADMIN_PROXY_SHARED_SECRET}
TERMI_ADMIN_TRUST_PROXY_AUTH=false
TERMI_ADMIN_LOCAL_LOGIN_ENABLED=true
TERMI_ADMIN_PROXY_SHARED_SECRET=

# Optional: override package tags if needed
BACKEND_IMAGE=git.init.cool/cool/termi-astro-backend:latest
FRONTEND_IMAGE=git.init.cool/cool/termi-astro-frontend:latest
ADMIN_IMAGE=git.init.cool/cool/termi-astro-admin:latest
