chore: add local docker validation workflow
This commit is contained in:
@@ -523,6 +523,16 @@
|
||||
<tr><th>项目</th><th>命令 / 入口</th><th>说明</th></tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>本地 Docker 启动</td>
|
||||
<td><code>./scripts/start-local-docker.sh</code></td>
|
||||
<td>生产前默认本地验收入口;使用 <code>docker-compose.local.yml</code> 构建 Web / API / Postgres,默认 Web 为 <code>http://localhost:4390</code>,API 为 <code>http://localhost:4391</code>,本地数据写入 <code>data-local/</code>。首次启动会从 <code>deploy/.env.local.example</code> 生成不入库的 <code>deploy/.env.local</code>,本地登录默认 <code>skg / local-skg</code>。</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>本地 Docker 验证</td>
|
||||
<td><code>./scripts/verify-local-docker.sh</code></td>
|
||||
<td>检查本地 Docker 容器、登录页、未登录 API 保护和容器内 <code>/health</code> + Postgres 连接。以后代码改动先通过本地 Docker 验证并形成本地 commit,只有用户明确确认后才推送 Gitea 或执行生产部署。</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>本地后台启动</td>
|
||||
<td><code>./scripts/start-dev-background.sh</code></td>
|
||||
@@ -546,7 +556,7 @@
|
||||
<tr>
|
||||
<td>生产部署</td>
|
||||
<td><code>./scripts/deploy-prod-safe.sh</code></td>
|
||||
<td>服务器目录为 <code>/opt/skg-marketing-studio</code>;后端任务文件挂载到 <code>./data/jobs</code>,全局资源中心挂载到 <code>./data/asset_library</code>、<code>./data/prompt_library</code> 和 <code>./data/_trash</code>,Postgres 数据目录为 <code>./data/postgres</code>,真实 Key 和数据库密码只放服务器 <code>deploy/.env.production</code>。生产部署唯一入口是 <code>deploy-prod-safe.sh</code>:先备份服务器 env、案例、资源库和 secrets,如 Postgres 容器存在则额外导出 <code>pg_dump</code>,再用 protect/exclude 保护 <code>data/</code>、<code>jobs/</code>、<code>secrets/</code>、<code>deploy/.env.production</code> 后同步代码,最后 Docker 重建并跑 <code>verify-prod-docker.sh</code>。禁止再用裸 <code>rsync --delete</code> 手动同步。</td>
|
||||
<td>服务器目录为 <code>/opt/skg-marketing-studio</code>;后端任务文件挂载到 <code>./data/jobs</code>,全局资源中心挂载到 <code>./data/asset_library</code>、<code>./data/prompt_library</code> 和 <code>./data/_trash</code>,Postgres 数据目录为 <code>./data/postgres</code>,真实 Key 和数据库密码只放服务器 <code>deploy/.env.production</code>。生产部署唯一入口是 <code>deploy-prod-safe.sh</code>:先备份服务器 env、案例、资源库和 secrets,如 Postgres 容器存在则额外导出 <code>pg_dump</code>,再用 protect/exclude 保护 <code>data/</code>、<code>jobs/</code>、<code>secrets/</code>、<code>deploy/.env.production</code> 后同步代码,最后 Docker 重建并跑 <code>verify-prod-docker.sh</code>。禁止再用裸 <code>rsync --delete</code> 手动同步;未得到用户明确确认前,不推送 Gitea、不部署生产。</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>前端开发服务</td>
|
||||
@@ -1391,6 +1401,18 @@ ProductRefStateItem {
|
||||
<p><strong>影响:</strong>画布项目开始具备跨浏览器、跨设备恢复的服务端主存储;默认仍按 owner 私有隔离,后续可在同一表上扩展 team/company 可见性。完整 job state 和媒体文件仍保留在原有文件目录,避免把大文件一次性搬进数据库。</p>
|
||||
</div>
|
||||
</article>
|
||||
<article class="change">
|
||||
<header>
|
||||
<h3>2026-05-26 · 本地 Docker 先验收再上推</h3>
|
||||
<span class="tag amber">Ops</span>
|
||||
<span class="tag blue">Docs</span>
|
||||
</header>
|
||||
<div class="body">
|
||||
<p><strong>问题:</strong>此前代码修改常直接走生产部署验证,容易把还在反复调整的模型、尺寸或界面配置带到线上,影响正在使用的团队成员。</p>
|
||||
<p><strong>改动:</strong>新增 <code>docker-compose.local.yml</code>、<code>deploy/.env.local.example</code>、<code>scripts/start-local-docker.sh</code>、<code>scripts/verify-local-docker.sh</code> 和 <code>scripts/stop-local-docker.sh</code>。本地 Docker 默认暴露 <code>localhost:4390</code>,使用独立 <code>data-local/</code> 和本地 Postgres,不读取生产 <code>deploy/.env.production</code>。</p>
|
||||
<p><strong>影响:</strong>后续开发流程改为“本地 Docker 启动 → 本地验证 → 本地 commit → 用户确认后才推送/部署”。<code>AGENTS.md</code> 与 <code>RULES.md</code> 已同步该约束,避免后续接手会话自动推送或直接上生产。</p>
|
||||
</div>
|
||||
</article>
|
||||
<article class="change">
|
||||
<header>
|
||||
<h3>2026-05-26 · 恢复最初生图配置</h3>
|
||||
|
||||
Reference in New Issue
Block a user