Docker Compose 的主要功能可以總結為一句話:
👉 用一個配置文件(docker-compose.yml),一次性管理、啓動、停止、編排多個 Docker 容器。
下面是它的核心功能點(簡單明瞭版):
🧩 1. 多容器編排(Multi-container orchestration)
把 多個需要協同工作的服務(如:web、db、cache、queue)寫在一個 docker-compose.yml 文件裏,
👉 一條命令就能把整個系統跑起來:
docker compose up -d
⚙️ 2. 服務定義(Service definition)
可以在文件中定義每個服務的:
- 鏡像/構建方式(image/build)
- 端口映射(ports)
- 環境變量(environment)
- 數據卷(volumes)
- 網絡(networks)
- 依賴順序(depends_on)
把一整套環境“寫死”成一個版本化文件,方便複用。
🔌 3. 自動管理網絡(Networking)
Compose 會自動為所有服務創建一個 默認網絡,服務之間可以 通過服務名互相訪問。
例如:
web 訪問數據庫可以直接寫
mysql:3306
不需要 IP。
💾 4. 數據卷管理(Volumes)
可以在 compose 文件裏定義和掛載 volumes,保證容器重啓/更新後數據不丟失。
▶️ 5. 一鍵啓動 / 停止 / 重建 服務
常用命令:
docker compose up -d—— 啓動全部服務docker compose down—— 停止並刪除容器docker compose restart—— 重啓全部服務docker compose build—— 重建鏡像docker compose logs—— 查看日誌
非常適合開發環境和中小型部署。
👥 6. 環境一致性(Consistency)
開發、測試、上線用 同一份 Compose 配置,
保證環境一致,不會出現 “我本地運行正常” 的問題。
📦 7. 支持擴容(Scaling)
可以快速擴容某個服務:
docker compose up --scale web=3 -d
如果你需要,我也可以給你一個 典型的 docker-compose.yml 示例(如運行 Nginx + MySQL + Redis + Node.js)。