Docker-Compose
是 Docker 官方的开源项目,负责实现对Docker容器集群的快速编排。
Docker-Compose
可以管理多个Docker容器组成一个应用。需要定义一个yaml格式的配置文件 docker-compose.yml
,配置好多个容器之间的调用关系,然后只需要一个命令就能同时启动/关闭这些容器。
Docker建议我们每个容器中只运行一个服务,因为Docker容器本身占用资源极少,所以最好是将每个服务单独的分割开来。但是如果我们需要同时部署多个服务,每个服务单独构建镜像构建容器就会比较麻烦。所以 Docker 官方推出了 docker-compose
多服务部署的工具。
Compose允许用户通过一个单独的 docker-compose.yml
模板文件来定义一组相关联的应用容器为一个项目(project
)。可以很容易的用一个配置文件定义一个多容器的应用,然后使用一条指令安装这个应用的所有依赖,完成构建。
核心概念:
-
服务(
service
):一个个应用容器实例
-
工程(
project
):由一组关联的应用容器组成的一个完整业务单元,在docker-compose.yml
中定义
Compose使用的三个步骤:
-
编写 Dockerfile 定义各个应用容器,并构建出对应的镜像文件
-
编写
docker-compose.yml
,定义一个完整的业务单元,安排好整体应用中的各个容器服务
-
执行
docker-compose up
命令,其创建并运行整个应用程序,完成一键部署上线
安装Docker-Compose
Docker-Compose
的版本需要和Docker引擎版本对应,可以参照官网上的对应关系。
# 例如从github下载 2.5.0版本的docker-compose
# 下载下来的文件放到 /usr/local/bin目录下,命名为 docker-compose
curl -L https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
# 添加权限
chmod +x /usr/local/bin/docker-compose
# 验证
docker-compose version
卸载Compose:直接删除 usr/local/bin/docker-compose文件即可
初始版的dockerflie
redis和mysql实现交互
comfile的缺点
compose的优势
1、检查
docker-compose config -q
2、运行
docker-compose up -d
可视化监控