\uD83D\uDCCB Docker Compose 編排實戰:一鍵部署多容器應用!

\uD83D\uDCCB Docker Compose 編排實戰:一鍵部署多容器應用!

當項目變得越來越復雜 , 一個服務已經無法滿足需求時 , 你可能需要同時部署數據庫、后端服務、前端網頁、緩存組件……這時 , 如果還一個一個手動 docker run , 簡直是災難
【\uD83D\uDCCB Docker Compose 編排實戰:一鍵部署多容器應用!】這就是 Docker Compose 登場的時機!



? 一、什么是 Docker Compose?為什么需要它?Docker Compose 是 Docker 官方推出的容器編排工具 , 用于定義和運行多容器應用 。
通過一個 docker-compose.yml 文件 , 就可以用一條命令 docker-compose up , 一次性拉起整個項目中的多個服務 , 像啟動引擎一樣簡單 ??
? 使用 Compose 的優勢:
  • 一鍵啟動/停止多個容器
  • 配置集中管理 , 結構清晰
  • 支持服務依賴順序(如 DB 先啟動)
  • 本地開發、測試環境更輕松
  • 更適合多人協作部署場景
二、docker-compose.yml文件結構說明下面是一個典型的 Compose 配置文件結構:
version: \"3.9\"services:web:image: nginxports:- \"8080:80\"db:image: mysql:5.7environment:MYSQL_ROOT_PASSWORD: 123456volumes:- db_data:/var/lib/mysqlvolumes:db_data: 關鍵結構說明:
字段
含義說明
version
Compose 文件版本
services
定義多個容器服務
image
使用的鏡像名
build
可選 , 使用 Dockerfile 構建鏡像
ports
主機端口:容器端口映射
volumes
數據卷掛載
environment
環境變量設置
depends_on
指定依賴的服務 , 控制啟動順序
三、常見服務組合案例? LAMP(Linux + Apache + MySQL + PHP)services:apache:image: php:7.4-apacheports:- \"8080:80\"volumes:- ./code:/var/www/htmlmysql:image: mysql:5.7environment:MYSQL_ROOT_PASSWORD: root? MEVN(MongoDB + Express + Vue + Node)適用于現代前后端分離開發架構:
services:frontend:build: ./frontendports:- \"3000:80\"backend:build: ./backendports:- \"5000:5000\"depends_on:- mongomongo:image: mongoCompose 可以靈活支持不同編程語言與框架組合 , 讓你更輕松實現項目整體容器化!
四、實戰:一鍵部署多容器 WordPress + MySQL我們將部署一個最常見的實際案例:WordPress + MySQL 組合 。
? 創建項目結構:wordpress-docker/├── docker-compose.yml? 編輯docker-compose.yml:version: \"3.9\"services:wordpress:image: wordpressports:- \"8080:80\"environment:WORDPRESS_DB_HOST: db:3306WORDPRESS_DB_USER: rootWORDPRESS_DB_PASSWORD: 123456depends_on:- dbdb:image: mysql:5.7environment:MYSQL_ROOT_PASSWORD: 123456volumes:- db_data:/var/lib/mysqlvolumes:db_data:? 啟動項目:docker-compose up -d打開瀏覽器訪問 http://localhost:8080 , 你將看到熟悉的 WordPress 安裝界面!
? 常用 Compose 命令匯總
命令
作用說明
docker-compose up -d
后臺啟動所有服務
docker-compose down
停止并刪除容器和網絡
docker-compose ps
查看當前服務狀態
docker-compose logs
查看服務日志
docker-compose exec
進入容器執行命令
docker-compose restart
重啟所有服務
總結一下
知識點
內容說明
Compose 是啥?
多容器編排工具 , 用于簡化部署和管理 ?
文件結構清晰
所有配置集中在一個 yaml 文件
一鍵部署
up 和 down 就能快速搭建/清理環境
支持服務組合
如 LAMP、MEVN、WordPress 等多容器應用

    推薦閱讀