欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡

程序员文章站 2022-06-03 12:19:37
...

Docker-compose是什么

1.Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。
它是一个定义和运行多容器的docker应用工具
使用compose,你能通过YMAL文件配置你自己的服务,然后通过一个命令,你能使用配置文件创建和运行所有的服务

2.Compose是一个定位“定义和运行多个Docker容器应用的工具”,其前身是Fig,目前使用的Compose仍然兼容Fig格式的模板文件。

我们知道在Docker中构建自定义的镜像是通过使用Dockerfile模板文件来实现的,从而可以让用户很方便定义一个单独的应用容器。
而Compose使用的模板文件就是一个YAML格式文件,它允许用户通过一个docker-compose.yml来定义一组相关联的应用容器为一个项目(project)

3.在Compose中有两个重要的概念:

服务(service):一个应用的容器,实际上可以包括若干运行相同镜像的容器实例。
项目(project):由一组关联的应用容器组成的一个完成业务单元,在docker-compose.yml中定义。

以上可以理解为:
服务(service)就是在它下面可以定义应用需要的一些服务,代表配置文件中的每一项服务。每个服务都有自己的名字、使用的镜像、挂载的数据卷、所属的网络、依赖哪些其他服务等等,即以容器为粒度,用户需要Compose所完成的任务。

项目(project)代表用户需要完成的一个项目,即是Compose的一个配置文件可以解析为一个项目,即Compose通过分析指定配置文件,得出配置文件所需完成的所有容器管理与部署操作。

Docker-compose的常用命令

应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡

Docker-compose实现haproxy负载均衡

1.实验目的

使用docker compose管理nginx、haproxy镜像,实现nginx网页的高可用,其实就是在一台宿主机上同时利用多个镜像拉起多个容器,实现负载均衡。

2.实验背景:

服务端ser1(172.25.2.2) 	安装好docker相关组件,配置好服务
测试端真机(172.25.2.250) 	测试web负载均衡

compose的部署

之前的实验已经部署过compose,这里放上代码
1.

得到compose的安装包,发送至ser1
[aaa@qq.com ~]# mv docker-compose-Linux-x86_64-1.22.0 /usr/local/bin/docker-compose 设置快捷方式
给一个短一点的名字,用起来方便
[aaa@qq.com ~]# chmod +x /usr/local/bin/docker-compose给一个执行权限
[aaa@qq.com ~]# ll /usr/local/bin/docker-compose查看一下

2.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡

应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡3.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡
4.为了获得yml文件中定义的数据文件
应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡5.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡6.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡7.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡8.
应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡

应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡9.执行docker-compose时发现报错(-d表示打入后台)
应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡解决:删除docker-compse建立的容器,重新up

应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡
查看日志
应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡

测试

应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡在浏览器中发现haproxy的监控界面
应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡

为后端服务器创建共享目录

1.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡2.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡3.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡4.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡5.应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡在ser1中创建自己的测试文件
应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡测试时发现
应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡可以看出app1变红
应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡app1恢复正常

应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡总结:
应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡应用容器引擎之 docker 学习 (九) 多容器管理工具Docker-compose实现 haproxy+nginx的负载均衡