Codex Console + Sub2API 完整部署指南:从注册到 API 中转的一体化方案
概述
本文档介绍如何部署 Codex Console(OpenAI Codex 自动注册管理系统)与 Sub2API(API 中转网关),构建从账号注册到 API 服务分发的完整自动化流程。
核心架构:
-
Codex Console:负责自动注册 OpenAI Codex 账号,管理注册任务、账号池、邮箱服务
-
Sub2API:提供 API 中转服务,将注册的账号转化为可对外提供的 API 端点
-
数据流:注册任务 → 获取账号凭证 → 自动上传至 Sub2API → 通过 API Key 分发服务
环境准备
服务器要求
-
操作系统:Ubuntu 20.04+/Debian 10+ 或 CentOS 7+
-
内存:建议 2GB 以上
-
端口:需开放 8000(codex-console)、8080/6556(Sub2API,可自定义)
-
代理:需要稳定的海外代理(HTTP/SOCKS5)
基础依赖安装
# 更新系统
apt update && apt upgrade -y
# 安装基础工具
apt install -y git curl wget vim
# 安装 Node.js(用于 CloudMail 等扩展服务)
curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
apt install -y nodejs
# 验证安装
node -v # 应显示 v20.x
npm -v
Sub2API 部署
Sub2API 支持两种部署方式:Docker Compose(推荐,快速)或 二进制安装(生产环境,更灵活)。
方式一:Docker Compose 部署(推荐)
1. 安装 Docker
# 安装 Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo systemctl enable docker && sudo systemctl start docker
# 验证
docker --version
docker compose version
2. 准备配置文件
mkdir -p /opt/sub2api && cd /opt/sub2api
# 下载配置文件
curl -sSL https://raw.githubusercontent.com/Wei-Shaw/sub2api/main/deploy/.env.example -o .env
curl -sSL https://raw.githubusercontent.com/Wei-Shaw/sub2api/main/deploy/docker-compose.yml -o docker-compose.yml
3. 配置环境变量
编辑 .env 文件,设置以下关键参数:
# 服务器配置
SERVER_PORT=6556
SERVER_MODE=release
# PostgreSQL 配置(数据库自动创建)
POSTGRES_USER=sub2api
POSTGRES_PASSWORD=你的强密码
POSTGRES_DB=sub2api
# Redis 配置
REDIS_PASSWORD=
# 管理员账号
ADMIN_EMAIL=admin@sub2api.local
ADMIN_PASSWORD=你的管理员密码
# JWT 密钥(必须设置,否则重启后登录失效)
JWT_SECRET=$(openssl rand -hex 32)
TOTP_ENCRYPTION_KEY=$(openssl rand -hex 32)
# 时区
TZ=Asia/Shanghai
4. 启动服务
# 创建数据目录
mkdir -p data postgres_data redis_data
# 启动
docker compose up -d
# 查看日志(检查初始密码)
docker compose logs -f sub2api
# 如果 ADMIN_PASSWORD 留空,从日志获取自动生成的密码:
# docker compose logs sub2api | grep "admin password"
5. 访问与初始化
-
访问
http://你的服务器IP:6556 -
首次进入设置向导,配置数据库连接(使用上面设置的 PostgreSQL 参数)
-
完成初始化后创建分组和 API Key
方式二:Linux 二进制安装(非 Docker)
适用于需要更精细控制的生产环境。
1. 安装 PostgreSQL 和 Redis
# Ubuntu/Debian
sudo apt install -y postgresql postgresql-contrib redis-server
# 启动服务
sudo systemctl enable postgresql redis-server
sudo systemctl start postgresql redis-server
2. 创建数据库
sudo -u postgres psql
# 在 psql 中执行
CREATE USER sub2api WITH PASSWORD '你的密码';
CREATE DATABASE sub2api OWNER sub2api;
GRANT ALL PRIVILEGES ON DATABASE sub2api TO sub2api;
\q
3. 一键安装脚本
# 下载安装脚本
curl -sSL https://raw.githubusercontent.com/Wei-Shaw/sub2api/main/deploy/install.sh -o install.sh
chmod +x install.sh
# 运行安装(按提示输入端口等配置)
./install.sh
安装脚本会自动:
-
检测系统架构
-
下载最新版二进制
-
创建 sub2api 系统用户
-
安装 systemd 服务
-
生成安全密钥
安装过程中的端口配置:
运行 ./install.sh 时会交互式询问:
配置 Sub2API 服务监听地址
0.0.0.0 表示监听所有网卡,127.0.0.1 仅本地访问
服务器监听地址 [0.0.0.0]:
建议使用 1024-65535 之间的端口
服务器端口 [8080]: 6556
默认端口:6556(可自行修改,如 8080、3000 等)
4. 启动与配置
# 启动服务
sudo systemctl start sub2api
# 设置开机自启
sudo systemctl enable sub2api
# 查看状态
sudo systemctl status sub2api
# 查看日志
sudo journalctl -u sub2api -f
# 查看监听端口(确认服务正常启动)
ss -tlnp | grep sub2api
访问 http://你的服务器IP:6556(或你配置的端口)进入 Web 设置向导。
5. 修改端口(如需调整)
如果安装后需要修改端口,编辑 systemd 服务文件:
# 查看服务文件位置
systemctl cat sub2api
# 编辑服务配置
sudo vim /etc/systemd/system/sub2api.service
# 找到 ExecStart 行,添加 --port 参数:
ExecStart=/opt/sub2api/sub2api --port 8080
# 重载配置并重启
sudo systemctl daemon-reload
sudo systemctl restart sub2api
或在环境变量中配置(创建 /etc/sub2api/.env):
SERVER_PORT=8080
SERVER_HOST=0.0.0.0
Codex Console 部署
1. 克隆与安装
cd /opt
git clone https://github.com/dou-jiang/codex-console.git
cd codex-console
# 安装 Python 依赖
pip install -r requirements.txt
# 或创建虚拟环境(推荐)
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
2. 配置环境变量
cp .env.example .env
编辑 .env 关键配置:
# Web UI 配置
APP_HOST=0.0.0.0
APP_PORT=8000
APP_ACCESS_PASSWORD=你的强密码
# 数据库(默认 SQLite 即可,也可配置 PostgreSQL)
APP_DATABASE_URL=data/database.db
# 代理配置(非常重要)
HTTP_PROXY=http://127.0.0.1:7890
HTTPS_PROXY=http://127.0.0.1:7890
3. 启动服务
前台调试模式:
python3 webui.py --host 0.0.0.0 --port 8000
后台运行模式(生产环境推荐):
# 设置代理环境变量并后台运行
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
nohup python3 webui.py --host 0.0.0.0 --port 8000 > /var/log/codex.log 2>&1 &
Systemd 服务方式(开机自启):
sudo tee /etc/systemd/system/codex.service << 'EOF'
[Unit]
Description=Codex Console
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/opt/codex-console
Environment="http_proxy=http://127.0.0.1:7890"
Environment="https_proxy=http://127.0.0.1:7890"
ExecStart=/usr/bin/python3 /opt/codex-console/webui.py --host 0.0.0.0 --port 8000
Restart=always
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable codex
sudo systemctl start codex
系统联动配置
1. Sub2API 端配置
在 Sub2API 管理后台完成以下步骤:
-
创建分组:左侧菜单"分组管理" → 添加分组(如
Codex) -
创建 API Key:左侧菜单"API 密钥" → 创建并复制 Key 备用
2. Codex Console 端配置
登录 Codex Console 后:
-
进入 设置 → Sub2API 服务
-
添加服务配置:
- 名称:Sub2API
- API URL:http://你的Sub2API地址:6556
- API Key:粘贴上面复制的 Key
- 点击"测试连接"确认配置正确
3. 注册任务配置
在 注册 页面配置:
-
邮箱服务:选择 Tempmail.lol(默认)或配置 Outlook/CloudMail
-
注册类型:普通 / 子号
-
注册后自动操作:勾选"上传到 Sub2API"
-
分组:选择对应的 Sub2API 分组
4. 代理配置(关键)
Codex Console 必须使用代理才能成功注册:
方式一:全局代理(推荐)
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
python3 webui.py --host 0.0.0.0 --port 8000
方式二:动态代理配置
在 Web UI 的 设置 → 动态代理配置 中启用并填写代理 API 地址。
IP 要求:
-
不支持中国大陆(CN)、香港(HK)、澳门(MO)、台湾(TW)IP
-
推荐使用美国(US)、新加坡(SG)、日本(JP)等节点
常见问题与解决方案(试错总结)
在部署和注册过程中,可能遇到以下问题:
1. 注册失败:IP 地理位置不支持
现象:IP 检查失败: HK 或 IP 检查失败: CN
原因:OpenAI 限制特定地区 IP 注册
解决:确保代理节点为非限制地区(US/SG/JP 等),并在启动 codex-console 前设置代理环境变量
2. 注册失败:Failed to create account
现象:密码提交返回 400 错误 Failed to create account. Please try again.
原因:
-
临时邮箱被风控
-
代理 IP 被标记
-
OpenAI 注册流程变更(新增手机号验证环节)
解决:
-
使用 Outlook 自建邮箱替代临时邮箱
-
更换更干净的住宅代理
-
关注 codex-console 版本更新以适配新流程
3. CloudMail 部署失败
现象:wrangler deploy 卡在构建阶段或网络超时
原因:pnpm/npm 下载依赖时网络不稳定
解决:
# 配置 pnpm 代理
pnpm config set proxy http://127.0.0.1:7890
pnpm config set https-proxy http://127.0.0.1:7890
4. Sub2API 连接成功但 API Key 无效
现象:测试连接显示"连接成功",但后续操作报错
原因:Sub2API 端未创建分组或账号
解决:在 Sub2API 后台先创建至少一个分组
5. 跟随重定向链失败
现象:未能在重定向链中找到回调 URL
原因:OpenAI 注册流程已更新,当前版本未适配手机号验证环节
解决:当前版本暂无法自动完成全流程注册,建议手动注册后导入账号
结语
通过本文档的配置,你可以搭建一套从 Codex 账号自动注册到 API 中转的完整系统。核心要点在于:
-
代理是刚需:必须准备稳定、干净的海外代理,且启动服务前正确配置环境变量
-
邮箱选择:临时邮箱成功率低,建议部署 CloudMail 或使用 Outlook 账号池
-
风控应对:OpenAI 注册策略经常变动,需关注上游项目更新
系统部署完成后,可通过 Codex Console 批量创建注册任务,成功注册的账号会自动同步至 Sub2API,用户通过 Sub2API 生成的 API Key 即可调用 Codex 服务,实现完整的注册-中转闭环。
评论