Skip to content

chore: docker compose 通用化(換環境一行架設),NAS 差異改放本機覆蓋檔 - #74

Open
Cody8722 wants to merge 1 commit into
developfrom
chore/compose-generic
Open

Cody8722 wants to merge 1 commit into
developfrom
chore/compose-generic

Conversation

@Cody8722

Copy link
Copy Markdown
Owner

目標

換一個環境也能快速架設:cp 兩個範本 + docker compose up -d --build 就能跑。NAS 專屬的設定不進 GitHub,改放該主機本機的 docker-compose.override.yml。

改動

  • docker-compose.yml(通用版):內建 MongoDB(local-db profile,沒設就不啟動)、named volume(資料、照片)、前端 8080/後端 5001 對外、後端等 MongoDB 再啟動、前後端 healthcheck。
  • 覆蓋檔:外部網路 shared-db/edge、/tank 照片目錄、映像 digest、autoheal 標籤、不對外開埠,全部放 docker-compose.override.yml;已加入 .gitignore。Compose 會自動合併,NAS 的啟動指令不變。
  • docker-compose.test.yml:補上等 MongoDB 與 healthcheck(仍是 NAS 專用,維持原樣接 edge/shared-db)。
  • CI:雙環境冒煙測試在執行時臨時產生等效覆蓋檔;新增 generic-quickstart job,在乾淨環境照快速開始步驟跑一次。
  • 文件:README 快速安裝加 Docker 一行啟動、SETUP 新增「Docker 部署」、DEPLOY_TWO_ENV 說明覆蓋檔、.env.example 改成通用範本。

⚠️ 合併進 release 前,NAS 正式版必須先做

正式 checkout(~/accounting-system-prod)要先建好本機 docker-compose.override.yml,再 git pull。否則通用版會少接外部網路、連不到現有 MongoDB。覆蓋檔內容由 NAS 維運端提供,不在 repo。這步沒做完之前不要合到 release。

驗證

  • 本機 docker compose config:通用版有/無 profile 的服務清單正確;模擬 NAS 覆蓋檔合併後,與目前 NAS 正式版一致(無對外埠、/tank 照片、三個網路、digest、autoheal)
  • workflow YAML 語法
  • CI:Nginx Integration(雙環境)與 generic-quickstart(本機沒有 Docker daemon,無法先跑)

🤖 Generated with Claude Code

https://claude.ai/code/session_011d6eyuitfsYRBCPNeXGa3c

- docker-compose.yml 改為通用版:內建 MongoDB(profile local-db)、named volume、
  埠對外、後端等 MongoDB 再啟動、前後端 healthcheck,clone 後一行即可跑
- 主機專屬設定(外部網路、/tank 照片目錄、映像 digest、autoheal 標籤、不開埠)
  改放同目錄 docker-compose.override.yml,已加入 .gitignore,不進版控
- docker-compose.test.yml 補上等 MongoDB 與 healthcheck
- CI:雙環境冒煙測試在執行時臨時產生覆蓋檔;新增 generic-quickstart job 驗證通用快速開始
- README/SETUP/DEPLOY_TWO_ENV 與 .env.example 同步更新

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011d6eyuitfsYRBCPNeXGa3c

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant