Docker C:ompos?e 编排实战 一键部署多容器应用

经观智讯2025-07-22 02:26:58

当项目变得越来越复杂,一个服务已经无法满足需求时,你可能需要同时部署数据库、后端服务、前端网页、缓存组件……这时,如果还一个一个手动dockerrun,简直是灾难

这就是DockerCompose登场的时机!

❓一、什么是DockerCompose?为什么需要它?

DockerCompose是Docker官方推出的容器编排工具,用于定义和运行多容器应用。

通过一个docker-compose.yml文件,就可以用一条命令docker-composeup,一次性拉起整个项目中的多个服务,像启动引擎一样简单⚙️

使用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:

关键结构说明:

三、常见服务组合案例

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:mongo

Compose可以灵活支持不同编程语言与框架组合,让你更轻松实现项目整体容器化!

四、实战:一键部署多容器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-composeup-d

打开浏览器访问http://localhost:8080,你将看到熟悉的WordPress安装界面!

️常用Compose命令汇总

总结一下

  在会见国泰集团行政总裁林绍波时,自治区党委书记马兴瑞表示,希望国泰集团发挥优势,和新疆共同运行好直航航线,不断提升吸引力和可持续性。着眼更大范围、更宽领域拓展双方互利合作,助力新疆经济社会加快发展,打造亚欧黄金通道和向西开放桥头堡。用好新疆区位优势,积极开拓中亚等区域市场,实现更大发展。