From 6c7c940b3e29b7a84f4f8b7670450f2b9d7cb92c Mon Sep 17 00:00:00 2001 From: milky0217 Date: Sat, 30 May 2026 09:52:30 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E8=93=9D=E7=BB=BF=E9=83=A8=E7=BD=B2-?= =?UTF-8?q?=E6=98=8E=E7=A1=AE=E6=95=B0=E6=8D=AE=E5=BA=93=E5=90=8D=E7=A7=B0?= =?UTF-8?q?=E4=B8=8E=E8=93=9D=E7=BB=BF=E5=85=B3=E7=B3=BB(=E5=85=B1?= =?UTF-8?q?=E4=BA=AB=E4=B8=8D=E5=8F=98)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/BLUE-GREEN-DEPLOY.md | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/docs/BLUE-GREEN-DEPLOY.md b/docs/BLUE-GREEN-DEPLOY.md index 347f387..fa329e9 100644 --- a/docs/BLUE-GREEN-DEPLOY.md +++ b/docs/BLUE-GREEN-DEPLOY.md @@ -18,15 +18,26 @@ 开发环境(dev.xmclassmate.top) ├── 蓝色实例 :8080(当前活动) ├── 绿色实例 :8081(空闲) - └── 数据库 milkydata_dev(共享) + └── 数据库 milkydata_dev ← 蓝绿共享,名称不变 生产环境(xmclassmate.top) ├── 蓝色实例 :4433(当前活动) ├── 绿色实例 :4434(空闲) - └── 数据库 milkydata(共享) + └── 数据库 milkydata ← 蓝绿共享,名称不变 ``` -每个环境独立维护自己的蓝绿实例,互不干扰。 +每个环境独立维护自己的蓝绿实例和独立数据库,互不干扰。 + +### 数据库与蓝绿的关系 + +数据库名称**不受蓝绿切换影响**: + +| 环境 | 数据库 | 蓝绿实例共同连接 | +|------|--------|----------------| +| 开发 | `milkydata_dev` | `DATABASE_URL=postgres://.../milkydata_dev` | +| 生产 | `milkydata` | `DATABASE_URL=postgres://.../milkydata` | + +两个实例的 service 文件中 `DATABASE_URL` 配置为完全相同的值。切换蓝绿时只改端口,不改数据库连接。 ## 蓝绿部署架构 @@ -206,10 +217,10 @@ scripts/ ### 端口映射汇总 -| 环境 | 域名 | 当前端口 | 蓝绿备选端口 | -|------|------|---------|-------------| -| 开发 | `dev.xmclassmate.top` | `:8080` | `:8081` | -| 生产 | `xmclassmate.top` | `:4433` | `:4434` | +| 环境 | 域名 | 数据库 | 当前端口 | 蓝绿备选端口 | +|------|------|--------|---------|-------------| +| 开发 | `dev.xmclassmate.top` | `milkydata_dev` | `:8080` | `:8081` | +| 生产 | `xmclassmate.top` | `milkydata` | `:4433` | `:4434` | ## 当前是否实施