docs(ops): record sub2api 0.1.133 deployment
Some checks failed
CI / test (push) Has been cancelled
CI / frontend (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
Security Scan / backend-security (push) Has been cancelled
Security Scan / frontend-security (push) Has been cancelled

This commit is contained in:
zizi 2026-06-05 17:23:26 +08:00
parent ebf4d8c3c3
commit a2953b8a2f
2 changed files with 29 additions and 3 deletions

View File

@ -6,7 +6,7 @@ Sub2API — AI API 网关平台Go + Vue 3 前后端一体Ent ORM支持
- 上游: `https://github.com/Wei-Shaw/sub2api`
- 本地: `/Users/qingse/Sync/local-git/sub2api`
- 当前稳定版: `v0.1.126`
- 当前稳定版: `v0.1.133`
- 许可证: LGPL v3
## 部署留痕规则

View File

@ -1,6 +1,6 @@
# US RackNerd 0526 Sub2API Remote Inventory
最后核对时间2026-05-26 19:37 Asia/Shanghai
最后核对时间2026-06-05 17:22 Asia/Shanghai
## 远程位置
@ -21,6 +21,7 @@
- nginx`nginx/1.26.3`
- DNS`origin.proxy.api.lilifamily.com -> 216.45.59.243``catproxy.lilifamily.com -> 216.45.59.243`
- `proxy.api.lilifamily.com` 已切到 JPpro `151.242.164.72`3c4g 上旧 `proxy.api` nginx 站点已禁用。
- Sub2API 当前版本:`0.1.133`,当前镜像:`sub2api:upstream-0.1.133-ebf4d8c3c3e9`
- Sub2API 只绑定宿主机 `127.0.0.1:8080`,公网只能经 nginx `catproxy` 或受限 `origin` 转发。
- PostgreSQL、Redis、Mihomo 不映射公网端口。
- CLIProxyAPI 已部署为同机内网服务,容器加入 `sub2api-network`,宿主机仅监听 `127.0.0.1:8317`
@ -94,7 +95,7 @@ Sub2API
- token 配置:`/etc/nginx/proxy-ng/token.conf`,权限 `600 root root`
- token map 配置:`/etc/nginx/conf.d/proxy-ng-token-map.conf`,本地副本已脱敏
- 远程 `.env``PUBLIC_DOMAIN=proxy.api.lilifamily.com`
- 远程 `.env``SUB2API_IMAGE=sub2api:custom-menu-safe-embed-20260527-r2`
- 远程 `.env``SUB2API_IMAGE=sub2api:upstream-0.1.133-ebf4d8c3c3e9`
- URL allowlist 当前关闭:`SECURITY_URL_ALLOWLIST_ENABLED=false`
- 远程 `.env``SECURITY_URL_ALLOWLIST_ALLOW_INSECURE_HTTP=true`,允许 APIKey 上游 base_url 使用 `http://`
- CLIProxyAPI 部署目录:`/opt/cliproxyapi`
@ -267,3 +268,28 @@ docker exec sub2api sh -lc 'wget -q -S -O - http://cli-proxy-api:8317/healthz 2>
- 脱敏配置副本:`current/cliproxyapi-compose.yml``current/cliproxyapi-config.redacted.yaml`
- 验证结果:`curl http://127.0.0.1:8317/healthz` 返回 `200`;无业务 key 请求 `/v1/models` 返回 `401 Missing API key`;带业务 key 请求 `/v1/models` 返回 `200 {"data":[],"object":"list"}``docker exec sub2api` 内访问 `http://cli-proxy-api:8317/healthz` 返回 `200`
- 当前限制:尚未导入 OAuth auth 文件或上游 API key因此 `/v1/models` 返回空列表;后续需要为 CLIProxyAPI 配置具体 provider 后Sub2API 才能通过该内网地址调用上游模型。
### 2026-06-05 Sub2API 0.1.133 上游合并发布
- 目标:从上游 `origin/main` 合并到 `feature/proxy-ng` 后发布,跟进开源版本升级,同时保留本地 proxy-ng、ops 留痕和自定义菜单安全嵌入能力。
- 上游合并来源:`origin/main d895d765`
- 本地发布提交:`ebf4d8c3c3e9`
- 发布版本:`0.1.133`
- 部署方式:本地构建 linux/amd64 Go 二进制并嵌入前端,上传 runtime patch tar 到远程,在远程基于当前运行镜像替换 `/app/sub2api``/app/resources``docker commit` 生成本地镜像。
- runtime patch`/tmp/sub2api-0.1.133-ebf4d8c3c3e9-runtime-patch.tar.gz`
- runtime patch SHA256`2709409c4bd3cd3cc7622dcdb9e8eea264f9cc595cb60d845a528fc0d676fcc6`
- 部署前备份:`/opt/sub2api/backups/deploy-upstream-0.1.133-20260605-021731`
- 当前镜像:`sub2api:upstream-0.1.133-ebf4d8c3c3e9`
- 镜像 ID`sha256:01bc4c4df84c2ed9cc5ec0934203b3a17538b0854d0704d91dbc2b9b878e834a`
- 生效方式:更新远程 `/opt/sub2api/.env``SUB2API_IMAGE`,执行 `docker compose up -d --no-deps --force-recreate sub2api`PostgreSQL、Redis、Mihomo、CLIProxyAPI 未重启。
- 远程版本核对:`/app/sub2api --version` 返回 `Sub2API 0.1.133 (commit: ebf4d8c3c3e9, built: 2026-06-05T09:13:49Z)`
- 远程健康核对:`docker compose ps sub2api` 显示 `healthy`;本机 `http://127.0.0.1:8080/health` 返回 `{"status":"ok"}`
- CLIProxyAPI 边界核对:宿主机 `http://127.0.0.1:8317/healthz` 和 Sub2API 容器内 `http://cli-proxy-api:8317/healthz` 均返回 `{"status":"ok"}`
- nginx 核对:`nginx -t` 成功,`systemctl is-active nginx` 返回 `active`
- 端口边界核对Sub2API 仅监听 `127.0.0.1:8080`CLIProxyAPI 仅监听 `127.0.0.1:8317`,公网仅开放 nginx `80/443`
- 公网健康核对:`https://catproxy.lilifamily.com/health``https://proxy.api.lilifamily.com/health` 均返回 `{"status":"ok"}`
- 公网设置核对:`https://catproxy.lilifamily.com/api/v1/settings/public` 返回 `version=0.1.133`,并保留 `购买套餐` 菜单和 `omit_auth_context=true`
- 自定义页面核对:`https://catproxy.lilifamily.com/custom/shop` 返回 `200`,页面配置仍包含 `https://pay.ldxp.cn`
- origin 边界核对:本地非白名单来源访问 `https://origin.proxy.api.lilifamily.com/health` 返回 `403`,符合预期。
- 注意:本地镜像通过 `docker commit` 生成OCI label 仍可能继承旧 runtime patch 元数据;运行版本以远程二进制 `--version``.env``SUB2API_IMAGE` 和 Compose 实际镜像为准。
- 回滚方式:把 `/opt/sub2api/.env``SUB2API_IMAGE` 回退到上一版 `sub2api:custom-menu-safe-embed-20260527-r2`,再执行 `cd /opt/sub2api && docker compose up -d --no-deps --force-recreate sub2api`;必要时使用备份目录 `/opt/sub2api/backups/deploy-upstream-0.1.133-20260605-021731` 取回部署前文件。