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>
4.1 KiB
4.1 KiB
CFDivePlatform 啟動指令
部署模式
專案根目錄有兩個 compose 檔:
| 檔案 | 用途 |
|---|---|
docker-compose.yml |
正式服務(app、nginx、frontend、db、redis、reverb、queue-worker) |
compose.override.yml |
開發工具(phpmyadmin、mailpit),已進版控 |
本機 / VPS(預設):Docker Compose 自動合併兩檔,開發工具一同啟動:
docker compose up -d
雲端正式環境:明確指定單一檔案,排除開發工具:
docker compose -f docker-compose.yml up -d
VPS 首次部署或更新後執行
git pull即可取得最新的compose.override.yml,不需手動建立。
專案位置
C:\laragon\www\CFDivePlatform
1. 進入專案目錄
cd C:\laragon\www\CFDivePlatform
2. 準備 .env
如果尚未建立 .env:
copy .env.example .env
確認 .env 至少設定以下項目:
APP_KEY=
DB_DATABASE=CFDivePlatform
DB_USERNAME=cfdiveuser
DB_PASSWORD=your_password
MYSQL_ROOT_PASSWORD=your_root_password
REVERB_APP_ID=your_reverb_app_id
REVERB_APP_KEY=your_reverb_app_key
REVERB_APP_SECRET=your_reverb_app_secret
VITE_REVERB_APP_KEY=your_reverb_app_key
如果 APP_KEY 是空的,可在容器啟動後執行:
docker compose exec app php artisan key:generate
3. 啟動 Docker 服務
第一次啟動,或 Dockerfile / compose 設定有變更時:
docker compose up -d --build
平常啟動:
docker compose up -d
4. 查看服務狀態
docker compose ps
查看所有服務 log:
docker compose logs -f
只查看 Laravel App log:
docker compose logs -f app
5. 初始化與維護指令
容器啟動時會自動執行部分初始化流程:
- 安裝 Composer 依賴
- 等待 MySQL 啟動
- 執行 migration
- 清除 Laravel cache
- 建立 storage link
- 產生 Swagger 文件
如需手動執行,可使用:
docker compose exec app composer install
docker compose exec app php artisan migrate
docker compose exec app php artisan storage:link
docker compose exec app php artisan l5-swagger:generate
清除 Laravel 快取:
docker compose exec app php artisan config:clear
docker compose exec app php artisan cache:clear
docker compose exec app php artisan route:clear
docker compose exec app php artisan view:clear
6. 建立管理員帳號
docker compose exec app php artisan app:create-admin "Admin" "admin@example.com" --password="your_password"
密碼至少需要 8 碼。
7. 前端 Vite 開發模式
如果要使用本機 Vite 開發模式:
npm install
npm run dev
正式建置:
npm run build
Docker Compose 內也有 frontend 服務,預設網址為:
http://localhost:5173
8. 重啟 frontend
如果 frontend 是透過 Docker Compose 啟動:
docker compose restart frontend
如果有修改 frontend 的 Dockerfile、環境變數或 build 內容,建議重建:
docker compose up -d --build frontend
如果是使用本機 Vite 開發模式,先在原本終端機按 Ctrl + C 停止,再重新執行:
npm run dev
9. 服務網址
| 服務 | URL |
|---|---|
| API / Laravel + Nginx | http://localhost:8080 |
| Frontend Docker | http://localhost:5173 |
| phpMyAdmin | http://localhost:8081 |
| Mailpit | http://localhost:8025 |
| Reverb WebSocket | ws://localhost:8085 |
| Health Check | http://localhost:8080/health |
10. 停止服務
停止容器,但保留資料庫 volume:
docker compose down
停止容器並移除 volume,會清除 MySQL 資料:
docker compose down -v
最短啟動流程
cd C:\laragon\www\CFDivePlatform
copy .env.example .env
docker compose up -d --build
docker compose exec app php artisan key:generate
docker compose ps
啟動完成後開啟:
http://localhost:8080