From 07f2fa4213571c6400a040cc9c94c7900164c4bf Mon Sep 17 00:00:00 2001 From: kang Date: Fri, 15 May 2026 14:53:34 +0800 Subject: [PATCH] auto-save 2026-05-15 14:53 (~6) --- .memory/worklog.json | 14 +++++++------- Dockerfile.api | 1 + RULES.md | 4 ++-- deploy/nginx.conf | 2 +- docs/deploy-vps.md | 2 +- docs/source-analysis.html | 2 +- 6 files changed, 13 insertions(+), 12 deletions(-) diff --git a/.memory/worklog.json b/.memory/worklog.json index 91eae08..2428ee8 100644 --- a/.memory/worklog.json +++ b/.memory/worklog.json @@ -1,12 +1,5 @@ { "entries": [ - { - "files_changed": 1, - "hash": "38091d3", - "message": "auto-save 2026-05-13 23:23 (~1)", - "ts": "2026-05-13T23:24:03+08:00", - "type": "commit" - }, { "files_changed": 5, "hash": "03770b1", @@ -3251,6 +3244,13 @@ "type": "session-heartbeat", "message": "Codex 会话活跃 · 最近命令:codex · 5 项未提交变更 · 最近提交:auto-save 2026-05-15 14:42 (~1)", "files_changed": 5 + }, + { + "ts": "2026-05-15T14:48:01+08:00", + "type": "commit", + "message": "auto-save 2026-05-15 14:47 (+6, ~5)", + "hash": "27e2002", + "files_changed": 12 } ] } diff --git a/Dockerfile.api b/Dockerfile.api index d6b6823..1033f22 100644 --- a/Dockerfile.api +++ b/Dockerfile.api @@ -3,6 +3,7 @@ FROM python:3.12-slim ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ PIP_NO_CACHE_DIR=1 \ + DEBIAN_FRONTEND=noninteractive \ JOBS_DIR=/data/jobs WORKDIR /app diff --git a/RULES.md b/RULES.md index 2f7f730..45a7dff 100644 --- a/RULES.md +++ b/RULES.md @@ -14,14 +14,14 @@ ## 部署事实 - 平台:VPS `76.13.31.179`(Ubuntu 24.04 / Docker Compose / Coolify Traefik) -- 发布状态:生产部署配置已生成;公司域名 `marketing.skg.com` 已解析到 VPS,待执行 Compose 上线和 HTTPS 验证 +- 发布状态:已部署并验证(2026-05-15);`https://marketing.skg.com` 首页 200,`/api/health` 返回 `ok:true` - 主站 / 前端:`https://marketing.skg.com` - API / 后端:`https://marketing.skg.com/api` - 文档 / 解析:`docs/source-analysis.html`(项目内独立文档,不公开挂主应用路由) - 管理后台:待定 - 服务器目录:`/opt/skg-marketing-studio` - 生产启动:`docker compose -f docker-compose.prod.yml --env-file deploy/.env.production up -d --build` -- 生产架构:`web` 容器用 Nginx 承载 Next 静态导出并反代 `/api/`,`api` 容器跑 FastAPI 4291;Traefik 通过 `coolify` 外部网络接入 80/443 +- 生产架构:`web` 容器用 Nginx 承载 Next 静态导出并反代 `/api/` 到 `skg-marketing-api:4291`,`api` 容器跑 FastAPI 4291;Traefik 通过 `coolify` 外部网络接入 80/443 - 持久化目录:服务器 `./data/jobs` 挂载到后端 `/data/jobs` ## 快捷登录 diff --git a/deploy/nginx.conf b/deploy/nginx.conf index 9e29505..170e084 100644 --- a/deploy/nginx.conf +++ b/deploy/nginx.conf @@ -12,7 +12,7 @@ server { } location /api/ { - proxy_pass http://api:4291/; + proxy_pass http://skg-marketing-api:4291/; proxy_http_version 1.1; proxy_request_buffering off; proxy_buffering off; diff --git a/docs/deploy-vps.md b/docs/deploy-vps.md index a4745b5..ae8e4f0 100644 --- a/docs/deploy-vps.md +++ b/docs/deploy-vps.md @@ -57,7 +57,7 @@ docker compose -f docker-compose.prod.yml --env-file deploy/.env.production up - ## Runtime Notes - `web` is a static Next export served by Nginx. -- `web` proxies `/api/` to `api:4291`. +- `web` proxies `/api/` to `skg-marketing-api:4291`; avoid the generic hostname `api` because the web container also joins the shared Coolify network. - `api` is only on the internal project network and stores jobs under `/data/jobs`. - Server-side job files persist in `./data/jobs` on the VPS. - Large uploads are allowed up to `2g` at the Nginx proxy layer. diff --git a/docs/source-analysis.html b/docs/source-analysis.html index 0216075..64e596c 100644 --- a/docs/source-analysis.html +++ b/docs/source-analysis.html @@ -946,7 +946,7 @@ SubjectAsset { Deploy
-

改动:把生产入口确定为 https://marketing.skg.com,DNS 已解析到 VPS 76.13.31.179。新增 Docker Compose 生产配置:前端用 Next 静态导出 + Nginx,/api/ 反代到 FastAPI;后端任务目录持久化到服务器 ./data/jobs;Traefik 通过既有 coolify 外部网络接管 80/443。

+

改动:把生产入口确定为 https://marketing.skg.com,DNS 已解析到 VPS 76.13.31.179。新增 Docker Compose 生产配置:前端用 Next 静态导出 + Nginx,/api/ 反代到唯一容器名 skg-marketing-api:4291,避免与 Coolify 网络里其他项目的泛名 api 冲突;后端任务目录持久化到服务器 ./data/jobs;Traefik 通过既有 coolify 外部网络接管 80/443。已完成上线验证:HTTPS 首页 200,/api/health 返回 ok:true

影响:Dockerfile.webDockerfile.apidocker-compose.prod.ymldeploy/nginx.confdeploy/.env.production.exampledocs/deploy-vps.md.project.jsonRULES.mddocs/source-analysis.html