
一、docker-compose介绍
Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。
Compose 定位是:定义和运行多个 Docker 容器的应用。
使用一个Dockerfile 模板文件,可以让用户很方便的定 义一个单独的应用容器。
在日常工作中,经常会碰到需要多个容器相互配合来完成某项任务的情况。
如:要实现一个Web项目,除了Web服务容器本身,往往还需要再加上后端的数据库服务容器,甚至还包括负载均衡容器等。
Compose正好满足了这样的需求.它允许用户通过一个单独的docker-compose.yml 模板文件 (YAML 格式)来定义一组相关联的应用容器为一个项目(project)。
有了Compose,我们就不需要再一个个组件去写一份Dockerfile,只需要将整体环境同一起来,写在一份docker-compose.yml文件即可
Compose 中有两个重要的概念:
服务 ( service ):一个应用的容器,实际上可以包括若干运行相同镜像的容器实例。
项目 ( project ):由一组关联的应用容器组成的一个完整业务单元,在 docker-compose.yml 文件中定义。
二、docker-compose安装
Compose的yml文件版本和docker版本对应关系如下:
安装docker----常规安装
根据版本,自行安装。。。。。。
三、docker-compose简单示例
使用docker-compose启动一个nginx
在/root/zhaosj_nginx下新建docker-compose.yml文件,输入如下内容:

version: "3" # 表示该docker-compose.yml文件使用的是Version 3 services: # 为project定义服务 nginx: # 指定服务名称 image: nginx # 指定服务所使用的镜像 ports: # 暴露端口信息 - 80:80
在yml文件所在的当前目录使用docker-compose up启动
[root@whdata zhaosj]# docker-compose up



谨记:
编写完毕yml文件后可在
http://www.bejson.com/validators/yaml_editor/
工具处验证

四、执行后报错整理
[root@whdata2 ~]# docker-compose up
ERROR: yaml.scanner.ScannerError: mapping values are not allowed here
in "./docker-compose.yml", line 4, column 7
执行docker中的yml命令报错时要看清楚yml文件严格的格式书写要求
要求每个冒号和每个 - 符号后面必须有一个空格

版权声明:本文内容来自知乎:ILen,遵循CC 4.0 BY-SA版权协议上原文接及本声明。
本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行可。
原文链接:https://zhuanlan.zhihu.com/p/359868640
如有涉及到侵权,请联系,将立即予以删除处理。
在此特别鸣谢原作者的创作。
此篇文章的所有版权归原作者所有,与本公众号无关,商业转载建议请联系原作者,非商业转载请注明出处。