简述
前面我们使用 Docker 的时候,定义 Dockerfile 文件,然后使用 docker build、docker run 等命令操作容器。这一系列的操作下来回花费很多时间,在微服务架构的应用系统一般包含若干个微服务,每个微服务一般都会部署多个实例,如果每个微服务都要手动启停,那么效率就会非常低。使用 Docker Compose 可以轻松、高效的管理容器,它是一个用于定义和运行多容器 Docker 的应用程序工具。
Docker Compose 是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。简单的命令和配置文件可以快速解决 Docker 操作容器,部署项目。从功能上看,跟 OpenStack 中的 Heat 十分类似,其代码目前在 https://github.com/docker/compose 上开源。
Docker Compose 允许用户通过一个单独的 docker-compose.yml 模板文件(YAML 格式)来定义一组相关联的应用容器为一个项目。
Compose 中有两个重要的概念:
- 服务 (service):一个应用的容器,实际上可以包括若干运行相同镜像的容器实例。
- 项目 (project):由一组关联的应用容器组成的一个完整业务单元,在 docker-compose.yml 文件中定义。
Docker Compose安装
需要注意的是,docker compose 安装需要和 docker 一起,所以有安装 docker 的需要先卸载 docker
- 删除 /etc/apt/sources.list.d 目录下的 docker.list 文件
cd /etc/apt/sources.list.d
rm docker.list
- 卸载 docker
apt-get autoremove docker-ce
- 重新安装 docker-ce
curl -fsSL get.docker.com -o get-docker.sh
sh get-docker.sh --mirror AzureChinaCloud
- 安装 docker compose
curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
最新版本安装命令
curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- 给 docker compose 添加权限
chmod +x /usr/local/bin/docker-compose
- 查看是否安装成功
docker version
docker-compose version