一,基本知识
1,Docker Compose
(1)Docker Compose 将所管理的容器分为三层,工程(project),服务(service)以及容器 (contaienr)。
(2)Docker Compose 运行的目录下的所有文件(docker-compose.yml, extends 文件或环境变量文件等)组成一个工程,若无特殊指定工程名即为当前目录名。一个工程当中可包含多个服务,每个服务中定义了容器运行的镜像,参数,依赖。一个服务当中可包括多个容器实例,Docker Compose 并没有解决负载均衡的问题,因此需要借助其他工具实现服务发现及负载均衡。
(3)Docker Compose 是一个用来创建和运行多容器应用的工具。使用 Compose 首先需要编写Compose 文件来描述多个容器服务以及之间的关联,然后通过命令根据配置启动所有的容器。 Dockerfile 可以定义一个容器,而一个 Compose 的模板文件(YAML 格式)可以定义一个 包含多个相互关联容器的应用。
2,使用Compose 基本上分为三步
(1)Dockerfile 定义应用的运行环境
(2)docker-compose.yml 定义组成应用的各服务
(3)docker-compose up 启动整个应用
二、compose部署
1.自己下载的二进制文件移到 /usr/local/bin/,赋予执行权限
[root@server1 hh]# mv docker-compose-Linux-x86_64-1.22.0 /usr/local/bin/docker-compose
[root@server1 hh]# chmod +x /usr/local/bin/docker-compose
2.编写docker-compose.yml
[root@docker1 ~]# cd /tmp
[root@docker1 tmp]# mkdir docker
[root@docker1 tmp]# cd docker/
[root@docker1 docker]# mkdir compose
[root@docker1 docker]# cd compose/
[root@docker1 compose]# vim docker-compose.yml
[root@docker1 compose]# cat docker-compose.yml
web1:
image: nginx
expose:
- 80
volumes:
- ./web1:/usr/sha