網路與儲存
Vibe Prompt
「幫我設計一個微服務網路架構:前端在 public 網路,後端和資料庫在 internal 網路,後端可以連 DB,前端不行。」
網路隔離
services:
frontend:
networks:
- frontend
backend:
networks:
- frontend
- backend
postgres:
networks:
- backend
networks:
frontend:
driver: bridge
backend:
driver: bridge
internal: true # 無法存取外部網路
Volume 類型
| 類型 | 範例 | 說明 |
|------|------|------|
| Named Volume | pgdata:/var/lib/postgresql/data | Docker 管理,持久化 |
| Bind Mount | ./src:/app/src | 主機目錄掛載,hot reload |
| Anonymous | /app/node_modules | 臨時儲存,容器刪除後消失 |
| Tmpfs | /tmp:ro | 記憶體暫存,高效能 |
Volume 驅動
volumes:
pgdata:
driver: local
s3data:
driver: rclone
driver_opts:
remote: s3://my-bucket
type: s3