docker网络管理 docker swarm集群搭建与管理 docker数据卷管理

实训环境:
Docker安装平台支持:
Docker支持在多种平台上使用,包括Mac、Windows、Cloud以及Linux系统上等。由于Docker是基于Ubuntu发布的,所以官方更推荐在Ubuntu上使用Docker,开发者也可以根据自己的实际开发环境选择合适的开发平台。
Docker的安装并非想象中那么随意,在不同的平台上安装Docker必须满足不同的先决条件。本实验选择在Ubuntu16.04版本上使用Docker,因此这里只针对Ubuntu系统上的Docker安装要求进行实验。

任务一:Docker网络管理
Docker使用bridge(单主机互联)和overlay(可跨主机互联)两种网络驱动来进行容器的网络管理,用户可以自定义网络驱动来进行Docke容器网络管理

1.客户端通过命令查看驱动网络
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
2.创建并启动容器networktest
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
查看容器运行情况
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
3.使用网络查看指令查看网络详情
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
4.创建基于bridge驱动的名称为isolated_nw的网络
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
5.查看创建的网络是否成功
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
6.使用自定义网络启动容器
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
7.通过docker inspect nwtest指令查看启动否的容器详情
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
8.为容器添加网络管理使用命令docker network connect bridge nwtest,为容器添加一种默认的bridge网络管理,然后查看容器网络详情
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
9.断开容器网络连接后(docker network disconnect isolated_nw nwtest),查看网络连接情况
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
10.移除自定义网络,列举所有网络确认是否移除成功
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
任务二:Docker容器之间网络通信演示查看
1.创建两个使用默认的bridge网络的容器
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
2.查看容器运行情况
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
3.创建一个自定义的网络的容器,首先创建自定义网络
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
4.为container2容器新增一个自定义的islated_nw网络连接
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
5.容器地址查看,进入容器,查看地址
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
6.分别进入container1和container3,查看容器地址

docker网络管理 docker swarm集群搭建与管理 docker数据卷管理docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
7.容器通信测试
由于container1和container3不在同一网络环境下,无法通信
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
8.同样在container1中无法ping通container3
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
9.container2可以与container1和3通信,验证了同一网络中的容器可以实现通信
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
任务三:Docker Swarm集群
Docker Swarm是一个用于创建和管理Docker集群的工具,集成了很多必要的工具,开发者只需要简单的命令就可以创建并管理Docker Swarm集群
1.实验环境准备
在虚拟机中分别安装了3台使用Ubuntu16.04系统的机器,这三台机器的主机名称分别为manager1 (作为管理节点)、worker1 (作为工作节点)和worker2 (作为工作节点),其IP地址分别如下:
manager1:192.168.1.136
worker1:192.168.1.137
worker2:192.168.1.138
修改主机名(/etc/hostname),映射主机地址(/etc/hosts)

docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
验证网络
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
2.在名为manage1的Docker机器上创建Docker Swarm集群,生成添加工作节点的指令
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
3.在管理节点上查看集群节点信息
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
4.启动工作节点,分别执行以下命令,向集群中加入工作节点
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
5.再次查看节点信息,可以看到工作节点添加成功
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
6.向集群中部署服务
拉取镜像
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
部署服务(docker service create --replicas 1 --name helloworld alpine ping docker.com),
查看集群中的服务信息
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
查看部署的服务详情
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
7.查看服务在集群节点上的分配情况
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
8.更改服务副本数量
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
9.再次查看服务部署情况
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
10.拉取镜像运行实例完成
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
11.删除服务
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
12.访问服务
查看网络情况
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
13.在集群管理节点上创建以overlay为驱动的自定义网络
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
14.在集群管理节点上部署服务
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
15.查看服务副本运行情况,可以看到两个服务副本被随机分配到管理节点和工作节点
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
16.登录验证,使用任一节点的IP都可登录验证
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
任务四:docker数据管理
1.创建数据卷,查看数据卷
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
2.查看存放容器和数据卷的文件目录
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
3.使用–mount挂载数据卷
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
使用-v挂载数据卷
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
4.分别查看容器列表和数据卷列表

docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
5.查看容器详情
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
容器数据挂载了mounts信息
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
6.查看本机文件系统中的容器与数据卷
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
实验完毕

问题:验证网络,可以实现宿主机的通信,但不能连接外网
解决方案:选择net模式,配置静态IP,配置DNS
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
重启网卡后,若重启失败,则重启宿主机,即可连接网络
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
使用命令安装vim可以方便编辑
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理
总结:
Docker Swarm集群主要特点:
●方便创建和管理集群
●可扩展
●可实现期望的状态调节
●集群中多主机网络自动扩展管理
●提供服务发现功能
●可实现负载均衡
●安全性强
●支持延迟更新和服务回滚
Docker三种外部挂载机制:
docker网络管理 docker swarm集群搭建与管理 docker数据卷管理