Docker Compose 详解:从多容器编排到完整开发环境

单独使用 Docker 时,我们通常需要执行: docker run 来启动一个容器。 但一个实际项目往往并不只有一个容器。 例如一个 PHP/Hyperf 项目可能需要: Nginx PHP / Hyperf MySQL Redis RabbitMQ 如果全部手动使用 docker run 管理,不仅命令很长,而且容器之间的网络、Volume、环境变量、启动顺序等都需要自己维护。 Docker Compose 就是为解决这个问题而设计的。 Docker 官方将 Compose 定义为用于定义和运行多容器应用的工具,可以在一个 Compose 文件中定义服务、网络和 Volume,并通过命令统一管理整个应用栈。当前推荐使用 Compose Specification。 1. Docker Compose 是什么 Docker Compose 的核心思想是: 一个应用 │ ├── PHP ├── Nginx ├── MySQL └── Redis │ ▼ compose.yaml │ ▼ docker compose up -d 也就是说: Docker 负责容器,Compose 负责组织容器。 例如: services: php: image: php:8.3-cli mysql: image: mysql:8....

2024年05月06日 · 6 min · Leanku