1.前言
Docker Compose 将所管理的容器分为三层,工程(project),服务(service)以及容器(contaienr)
Docker Compose 运行的目录下的所有文件(docker-compose.yml, extends 文件或环境变量文件等)组成一个工程
若无特殊指定工程名即为当前目录名。一个工程当中可包含多个服务,每个服务中定义了容器运行的镜像,参数,依赖
一个服务当中可包括多个容器实例,Docker Compose 并没有解决负载均衡的问题,因此需要借助其他工具实现服务发现及负载均衡
Docker Compose 是一个用来创建和运行多容器应用的工具
使用 Compose 首先需要编写Compose 文件来描述多个容器服务以及之间的关联,然后通过命令根据配置启动所有的容器
Dockerfile 可以定义一个容器,而一个 Compose 的模板文件(YAML 格式)可以定义一个包含多个相互关联容器的应用
Compose 项目使用 python 编写,基于后面的实验中我们将学习的 Docker API 实现
2.实验目的
使用docker compose管理nginx、haproxy镜像,实现nginx网页的高可用
其实就是在一台宿主机上同时利用多个镜像拉起多个容器,实现负载均衡
3.搭建实验环境
主机信息 | 主机的功能 |
---|---|
服务端server1(172.25.2.1) | 安装好docker相关组件,配置好服务 |
测试端真机(172.25.2.250) | 测试web负载均衡 |
(1)在真机上面创建一个快照compose1
(2)在真机当中导入镜像开启虚拟机compose1
(3)用真机连接compose1