be629feef9
Run Tests / test (pull_request) Successful in 30s
- docker-compose.yml:app healthcheck 改用 nc -z 127.0.0.1 9000 驗證 PHP-FPM port - docker-compose.yml:移除 phpmyadmin、mailpit(開發工具不屬於正式服務) - compose.override.yml:新增,含 phpmyadmin(8081)、mailpit(8025)port mapping - .env.example:QUEUE_CONNECTION 預設改 redis;補充 FILESYSTEM_DISK、LOG_STACK、SESSION_DRIVER 雲端注意事項 - docs/STARTUP.md:新增「部署模式」章節,明確區分 VPS 與雲端 -f 指令 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2.3 KiB
2.3 KiB
1. docker-compose.yml 調整
- 1.1 [後端] 修改
docker-compose.ymlapp service healthcheck:將test: ["CMD", "php", "-v"]改為test: ["CMD-SHELL", "nc -z 127.0.0.1 9000 || exit 1"](app container 無 HTTP server,用 nc 驗證 PHP-FPM FastCGI port 9000) - 1.2 [後端] 從
docker-compose.yml移除phpmyadminservice 完整定義(包含 image、container_name、environment、networks、depends_on) - 1.3 [後端] 從
docker-compose.yml移除mailpitservice 完整定義
2. 新增 compose.override.yml
- 2.1 [後端] 在專案根目錄新建
compose.override.yml,加入phpmyadminservice(保留原有的 PMA_HOST、PMA_PORT、PMA_USER、PMA_PASSWORD、MYSQL_ROOT_PASSWORD 環境變數設定與 networks、depends_on) - 2.2 [後端] 在
compose.override.yml加入mailpitservice(保留原有設定與 networks)
3. .env.example 更新
- 3.1 [後端] 將
.env.example的QUEUE_CONNECTION值從database改為redis - 3.2 [後端] 在
.env.example的FILESYSTEM_DISK=local旁加上行內說明,標示雲端應改為s3 - 3.3 [後端] 在
.env.example的LOG_CHANNEL/LOG_STACK區段加上說明,標示雲端建議改為stderr - 3.4 [後端] 在
.env.example的SESSION_DRIVER=database旁加上說明,標示雲端建議改為redis - 3.5 [後端] 在
.env.example的QUEUE_CONNECTION=redis旁加上說明,確認此為雲端建議值
4. 文件更新
- 4.1 [後端] 更新
docs/STARTUP.md,新增「部署模式」章節,明確列出兩組指令:- 本機 / VPS:
docker compose up -d(自動合併 override,含 phpmyadmin + mailpit) - 雲端正式環境:
docker compose -f docker-compose.yml up -d(排除開發工具) - 說明
compose.override.yml已進版控,VPSgit pull後即可取得,不需手動建立
- 本機 / VPS:
5. 手動驗證
- 5.1 [整合測試] 在本機執行
docker compose up -d,確認 phpmyadmin(8081)與 mailpit(8025)仍可正常存取 - 5.2 [整合測試] 執行
docker compose -f docker-compose.yml up -d --remove-orphans,確認 phpmyadmin 與 mailpit 不啟動 - 5.3 [整合測試] 確認
appcontainer 的 healthcheck 狀態在啟動後顯示 healthy(docker compose ps查看)