137 lines
4.5 KiB
YAML
137 lines
4.5 KiB
YAML
# 巡樓 gateway — 可提交的設定範本。
|
||
# 複製為 gateway.yaml 後填入私有密鑰;gateway.yaml 已被 .gitignore 排除。
|
||
Name: haixun-gateway
|
||
Host: 0.0.0.0
|
||
Port: 8888
|
||
# AI 產文/試產可能超過 30s;過短會 503 且前端拿不到結果
|
||
Timeout: 120000
|
||
MaxBytes: 104857600
|
||
|
||
Log:
|
||
Mode: console
|
||
Level: info
|
||
|
||
# go-zero monc 快取(Redis)— 與 monc.MustNewModel / CacheRedis 對接
|
||
# 若 Redis 有 requirepass:設 Pass 或環境變數 REDIS_PASSWORD / HAIXUN_REDIS_PASSWORD
|
||
# (沒帶密碼會 NOAUTH,登入 API 回 500)
|
||
CacheRedis:
|
||
- Host: 127.0.0.1:6379
|
||
Type: node
|
||
Pass: ""
|
||
|
||
# Mongo — mon/monc 使用完整 URI(含帳密時寫在 URI;可用環境變數 MONGO_URI 覆寫)
|
||
# 本機有 auth 的例子:
|
||
# export MONGO_URI='mongodb://USER:PASS@127.0.0.1:27017/?authSource=admin'
|
||
# 沒設帳密但 Mongo 開了 auth → 查詢會失敗,登入會 500 而不是「密碼錯」
|
||
Mongo:
|
||
URI: "mongodb://127.0.0.1:27017"
|
||
Database: "haixun"
|
||
|
||
Auth:
|
||
# 至少 32 bytes,且不得與 RefreshSecret 相同。
|
||
AccessSecret: "REPLACE_WITH_A_LONG_RANDOM_ACCESS_SECRET"
|
||
AccessExpire: 86400
|
||
RefreshSecret: "REPLACE_WITH_A_DIFFERENT_LONG_RANDOM_REFRESH_SECRET"
|
||
RefreshExpire: 604800
|
||
|
||
# 平台預設 key(所有會員可用;會員在設定頁填的 BYOK 優先)
|
||
# 也可用環境變數覆寫:PLATFORM_XAI_KEY / PLATFORM_OPENCODE_KEY / PLATFORM_EXA_KEY / PLATFORM_AI_KEY
|
||
Platform:
|
||
# xAI(api.x.ai)— 人設 LLM、文案等
|
||
XAIKey: ""
|
||
# 相容舊名:XAIKey 空時會用 AIKey
|
||
AIKey: ""
|
||
# OpenCode Go(opencode.ai/zen/go)
|
||
OpenCodeKey: ""
|
||
# Exa 網搜
|
||
ExaKey: ""
|
||
ThreadsAppId: ""
|
||
ThreadsAppSecret: ""
|
||
|
||
Scout:
|
||
# Dedicated encryption key for Chrome storage state; do not reuse JWT keys.
|
||
SessionSecret: "REPLACE_WITH_A_DEDICATED_SCOUT_SESSION_SECRET"
|
||
# Private Playwright crawler service, called only by cmd/worker in dev_mode.
|
||
CrawlerEndpoint: ""
|
||
CrawlerToken: ""
|
||
|
||
Worker:
|
||
# 留空時 worker 會用 hostname + pid 產生唯一 owner id;多 worker 不可共用固定值。
|
||
ID: ""
|
||
PollIntervalMs: 2000
|
||
|
||
# 僅 cmd/seeder 使用,gateway/worker 不會讀取或寫入 log。
|
||
Seed:
|
||
AdminPassword: "REPLACE_WITH_A_STRONG_SEED_ADMIN_PASSWORD"
|
||
|
||
Bcrypt:
|
||
Cost: 10
|
||
|
||
# OAuth(未設定 provider 時相關 API 明確拒絕,不提供 mock 路徑)
|
||
OAuth:
|
||
GoogleClientID: ""
|
||
LineClientID: ""
|
||
LineClientSecret: ""
|
||
LineRedirectURI: ""
|
||
|
||
# 驗證碼/重設密碼寄信
|
||
#
|
||
# 本機(Mailpit,Mailgun 相容 SMTP 介面):
|
||
# Host: 127.0.0.1 Port: 1025 User/Password 可空
|
||
# UI: http://127.0.0.1:8025
|
||
# 容器:old/infra docker-compose 的 mailpit 服務
|
||
#
|
||
# 正式 Mailgun SMTP 例:
|
||
# Host: smtp.mailgun.org Port: 587
|
||
# User: postmaster@YOUR_DOMAIN Password: <API SMTP password>
|
||
# DevExposeCode: false試產
|
||
#
|
||
# env 覆寫:MAIL_SMTP_* 或 HAIXUN_SMTP_*(舊名相容)
|
||
Mail:
|
||
Sender: "Harbor Desk <noreply@haixun.local>"
|
||
SMTP:
|
||
Host: "127.0.0.1"
|
||
Port: 1025
|
||
User: ""
|
||
Password: ""
|
||
# 不再於 API 回傳驗證碼;碼只在郵件(Mailpit/SMTP)
|
||
DevExposeCode: false
|
||
|
||
# 前端 origin:重設信連結 + 預設 logo URL(/brand-mark.jpg)
|
||
# 遠端 dev:https://threads-tool-dev.30cm.net
|
||
PublicWebBase: "https://threads-tool-dev.30cm.net"
|
||
# 瀏覽器直連 gateway 時的 allowlist;同源 proxy 不需要列在此處。
|
||
# CORS_ALLOWED_ORIGINS 可用逗號附加額外的明確 origin,不能使用 *。
|
||
CORSAllowedOrigins:
|
||
- "https://threads-tool-dev.30cm.net"
|
||
- "http://127.0.0.1:5173"
|
||
- "http://localhost:5173"
|
||
|
||
# 郵件品牌(hermes 模板;LogoURL 空 = PublicWebBase/brand-mark.jpg)
|
||
Brand:
|
||
Name: "Harbor Desk"
|
||
LogoURL: ""
|
||
Copyright: "© Harbor Desk"
|
||
|
||
# 物件儲存(頭像等)— **只接 MinIO/S3**
|
||
#
|
||
# Endpoint = gateway 上傳用(本機 MinIO,一定要 :9000)
|
||
# PublicBaseURL = 瀏覽器讀圖用(走 nginx :80,不要寫 port、不要加 /bucket)
|
||
# 成品網址 = PublicBaseURL + "/" + key
|
||
# 例:http://10.0.0.5/haixun-assets/avatar/1000000/xxx.png
|
||
#
|
||
# Secret 建議用 env,不要 commit:
|
||
# export HAIXUN_STORAGE_S3_ACCESS_KEY=haixun
|
||
# export HAIXUN_STORAGE_S3_SECRET_KEY='你的密碼'
|
||
# 或 MINIO_ROOT_USER / MINIO_ROOT_PASSWORD(ApplyEnv 會讀)
|
||
ObjectStorage:
|
||
Endpoint: "http://127.0.0.1:9000"
|
||
Region: "us-east-1"
|
||
Bucket: "haixun-assets"
|
||
AccessKey: "haixun"
|
||
SecretKey: ""
|
||
UsePathStyle: true
|
||
# env HAIXUN_STORAGE_S3_PUBLIC_BASE_URL 會覆寫;勿用 /api/v1/public/assets(新後端無此 route)
|
||
PublicBaseURL: "https://threads-tool-dev.30cm.net/haixun-assets"
|
||
|