這張卡做什麼(白話)

做換版升級:客戶拿到新版 bundle 後跑 install.sh --upgrade,四步自動完成——先備份整顆資料庫 → 載入新 image 並驗完整性 → 套資料庫增量變更(migration)→ 換版重起服務。出事時的回滾=還原備份+換回舊版 image,明文定位為災難逃生、不是常規操作(會丟升級後產生的資料)。

具體實作內容

install.sh --upgrade 四步:

  1. pg_dump 全量備份(落地到指定備份目錄)
  2. docker load 新 image+manifest digest 驗證(同安裝時的拒裝邏輯)
  3. one-shot init 容器套增量 migration(與 T-2.4 建庫容器同形態):移植 BE repo align_migrations.sh 的 diff+--apply 演算法到客戶端形態——現版寫死內部 IP、密碼讀 repo .env,客戶端重做連線層(連線參數外部注入);SQL+manifest.tsv 隨 bundle 出貨;依 schema_migrations 判斷起點(T-2.1 的 baseline marker+補登讓這裡無縫接軌)
  4. GUIDANT_VERSIONdocker compose up -d(自動 recreate 服務)

易踩雷提醒

驗收條件