docker compose、docker machine、docker swarm 这三个项目都是docker的原生支持,号称docker三剑客
Docker Compose简介
Docker Compose是一种编排服务,基于pyhton语言实现,是一个用于在 Docker 上定义并运行复杂应用的工具,可以让用户在集群中部署分布式应用。
用户可以很容易地用一个配置文件定义一个多容器的应用,然后使用一条指令安装这个应用的所有依赖,完成构建。
解决了容器与容器之间如何管理编排的问题。
百度百科:微服务:
https://baike.baidu.com/item/%E5%BE%AE%E6%9C%8D%E5%8A%A1%E6%9E%B6%E6%9E%84/18705784?fr=aladdin
Docker Compose 中有两个重要的概念:
服务 (service) :一个应用的容器,实际上可以包括若干运行相同镜像的容器实例。
项目 (project) :由一组关联的应用容器组成的一个完整业务单元,在 docker-compose.yml 文件中定义。
下面主要通过实例搭建负载均衡来展示docker-compose的用法:
请提前将haproxy.tar和nginx.tar包导入docker中
负载均衡:
docker-compose下载
联网,运行下面指令,给文件可执行权限即可。
方式一:官方下载【较慢】
curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
方式二:阿里云下载【较快】
https://mirrors.aliyun.com/docker-toolbox/linux/compose/1.21.2/
下载后放在: /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
使用下面命令测试是否安装完成:
docker-compose version
yml文件编写:
可以参考官网:
compose目录下的结构:
文件、目录说明:
docker-compose.yml :
haproxy.cfg :
结果演示:
大大的小小阳