本文档面向“第一次部署”和“后续升级”两个场景,尽量保持中文步骤清晰、可直接照做。
推荐优先级:
- Docker Compose(最推荐)
- Docker 手工运行
- 本地 Python 直接运行
如果你准备启用以下功能,建议用 Docker:
- Clash 订阅自助更新
- Mihomo 多实例代理池
- CPA / Sub2API 长时间运行
- 反向代理到域名
git clone https://github.com/BFanSYe/GPT-Auto-Manager.git
cd GPT-Auto-Managerdocker compose up -d --buildhttp://127.0.0.1:18000
- 自动创建
data/ - 自动根据
config.example.yaml生成data/config.yaml - 默认 Web 密码为
admin - 默认启用“跟随本仓库 GitHub Release 的更新提醒”和“一键自动更新”所需环境:
${PWD}:${PWD}(把源码目录挂进容器)HOST_PROJECT_PATH=${PWD}/var/run/docker.sock:/var/run/docker.sock
首次登录后请至少修改:
- Web 密码
- 集群密钥
- 各类 API Token / 订阅链接 / 邮箱凭据
当前仓库自带的 docker-compose.yml 默认采用本地构建:
- 优点:
- 不依赖外部预构建镜像
- 代码和运行版本一致
- 更适合公开仓库直接复用
默认只强依赖:
./data:/app/data
如果你 不使用 Clash 订阅自助更新,这样就够了。
默认约定:
/opt/mihomo-pool
该目录至少应包含:
/opt/mihomo-pool/
├── pool.env
├── update_pool.sh
├── status_pool.sh
├── config_1/config.yaml
├── config_2/config.yaml
└── ...
在容器中启用以下挂载:
- /opt/mihomo-pool:/opt/mihomo-pool
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/local/bin/docker:ro启用后,Web 面板可以做到:
- 一键更新订阅
- 自动重载代理池
- 自动识别真实策略组
- 自动给每个实例分配不同节点
- 自动检查并展示默认总路由是否对齐业务组
- 自动修正错误订阅入口(例如自动补
?flag=mihomo)
推荐将应用只监听在本机,再由 Nginx/Caddy 反代。
例如映射:
127.0.0.1:18000 -> 容器 8000
Nginx 示例:
server {
listen 80;
server_name your-domain.example;
location / {
proxy_pass http://127.0.0.1:18000;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}如需 HTTPS,建议额外配合:
- Let's Encrypt
- Caddy 自动签证书
- 或你自己的网关层
- Linux / macOS:
Python 3.11 - Windows:
Python 3.12
pip install -r requirements.txtpython wfxl_openai_regst.py默认地址:
http://127.0.0.1:8000
cd GPT-Auto-Manager
git pull
docker compose up -d --buildgit pull
docker build -t gpt-auto-manager:latest .
docker rm -f gpt-auto-manager || true
docker run -d \
--name gpt-auto-manager \
--restart unless-stopped \
--add-host host.docker.internal:host-gateway \
-p 127.0.0.1:18000:8000 \
-v $(pwd)/data:/app/data \
gpt-auto-manager:latest如果你启用了 Clash 订阅自助更新,再补上对应挂载即可。
发布/同步到 GitHub 前,建议确认:
data/没有被提交- 真实
config.yaml没有被提交 - 邮箱凭据未出现在文档
- 订阅链接未出现在文档
- Token / Key / Chat ID 未出现在文档
- 截图没有暴露敏感信息
本仓库已经默认忽略:
data/config.yaml.envtoken.jsoncredentials.json- 本地数据库与日志
优先检查:
- 前端 JS 是否缓存
- 容器是否已重建
- 反向代理是否还在指向旧实例
建议先执行:
docker compose up -d --build然后浏览器强刷。
优先检查:
- 宿主机
/opt/mihomo-pool是否挂载进去 update_pool.sh/status_pool.sh是否存在- 订阅链接返回的是不是 Mihomo YAML
当前项目已经内置:
- 自动探测订阅格式
- 自动尝试
?flag=mihomo - 错误订阅写入前拦截
现在新版测活日志会额外输出:
- 业务组当前节点
- 默认总组当前值
- 默认总组是否已对齐业务组
因此应优先以“业务组当前节点 + 默认路由对齐状态”判断真实链路,而不是只看单一 Cloudflare 地区值。
/opt/gpt-auto-manager/
├── data/
├── docker-compose.yml
└── .env(可选,不提交)
如果启用 Clash 订阅自助更新:
/opt/mihomo-pool/
├── pool.env
├── update_pool.sh
├── status_pool.sh
└── config_1 ... config_n
- 总览:
README.md - 配置模板:
config.example.yaml - 变更记录:
CHANGELOG.md