|
|
||
|---|---|---|
| .. | ||
| README.md | ||
| centrifugo.json | ||
| docker-compose.yaml | ||
README.md
Docker Compose 部署說明
服務說明
Redis
- 端口:6379
- 用途:配對佇列、使用者狀態、房間成員管理
Centrifugo
- HTTP API 端口:8000
- WebSocket 端口:8001
- 用途:即時訊息推送
- 配置文件:
centrifugo.json
Cassandra
- 端口:9042
- 用途:聊天歷史訊息儲存
配置說明
Centrifugo 配置
-
更新
centrifugo.json:token_hmac_secret_key:必須與etc/chat-api.yaml中的JWT.CentrifugoSecret或JWT.Secret相同api_key:必須與etc/chat-api.yaml中的Centrifugo.APIKey相同
-
範例配置:
{ "token_hmac_secret_key": "your-secret-key-change-in-production", "api_key": "api-key" } -
對應的
etc/chat-api.yaml:Centrifugo: APIURL: http://localhost:8000/api APIKey: "api-key" JWT: Secret: "your-secret-key-change-in-production" CentrifugoSecret: "" # 留空則使用 Secret
啟動服務
cd deployment
docker-compose up -d
驗證服務
- Redis:
redis-cli ping - Centrifugo:
curl http://localhost:8000/health - Cassandra:
docker exec -it cassandra cqlsh
注意事項
- 生產環境:請務必修改所有預設密碼和 secret key
- Centrifugo Redis:目前配置使用 Redis 作為 Centrifugo 的後端,確保 Redis 先啟動
- 網路配置:如果應用程序也在 Docker 中運行,請使用服務名稱(如
centrifugo:8000)而不是localhost