Docker中的网络和数据管理
任务一、Docker网络管理
一、Docker默认网络管理
1、查看docker中的所有网络
2、创建并启动容器
3、使用网络查看指令查看网络详情
二、自定义bridge网络
1、创建自定义网络
2、使用自定义网络启动容器
查看启动后的容器网络详情,核查网络管理模式
3、为容器添加网络管理
4、断开容器网络连接
三、容器之间的网络通信
1、创建容器
(1)创建两个容器,默认bridge网络管理
(2)创建一个使用自定义网络的容器
(3)为container2容器新增一个自定义网络连接
2、容器地址查看
3、容器通信测试
结论:不同容器之间想要互相通信必须在同一个网络环境;使用默认bridge网络管理的容器可以使用容器IP进行通信,但无法使用容器名称进行通信;而使用自定义网络管理的容器则可以同时使用容器名称进行通信
任务二、Docker Swarm集群
一、Docker Swarm使用
1、环境搭建
(1)准备3台Ubuntu系统主机(即用于搭建集群的3个Docker机器),每合机器上都需要安装Docker并且可以连接网络,同时要求Docker版本都必须是1.12及以上,因为老版本不支持Docker Swarm。
(2)集群管理节点Docker机器的IP地址必须固定,集群中的所有节点都能够访问该管理节点。
(3)集群节点之间必须使用相应的协议并保证其以下端口号可用:
●用于集群管理通信的TCP端口2377;
●TCP和UDP端口7946,用于节点间的通信;
●UDP端口4789,用于覆盖网络流量。
此处按照要求在虚报机中分别安装了3台机器,这三台机器的主机名称分别为manager1(作为管理节点)Woker1(作为工作节点),Woker2(作为工作节点),其P地址分别如下:
manager1:192.168.10.143
worker1 :192.168.10.144
worker2 :192.168.10.145
设置节点网络
2、创建Docker Swarm集群
(1)在管理节点上创建Docker Swarm集群
(2)查看节点信息
3、向Docker Swarm集群添加工作节点
(1)启动work1,向集群中添加工作节点
(2)启动work2,向集群中添加工作节点
(3)查看节点信息
4、向Docker Swarm集群部署服务
部署服务指令中个参数的集体说明:
Docker service create指令:用于在Swarm集群中创建一个基于alpine镜像的服务;
–replicas参数:指了该服务只有一个副本实列;
–name参数:指定创建成功后的服务名称为helloworld:
Ping docker.com指令:表示服务启动后执行的命令;
5、查看Docker Swarm集群中的服务
(1)服务部署完成后,查看集群中的服务列表信息
(2)查看部署的服务具体详情
(3)查看指定服务在集群节点上的分配和运行情况
6、更改Docker Swarm集群服务副本数量
7、删除服务
8、访问服务
(1)在管理节点上,查看网络列表
(2)在管理节点上,创建以overlay为驱动的自定义网络
(3)在管理节点上再次部署服务
部署服务命令中:
–network 参数用于指定服务使用自定义的overlay驱动网络my-multi-host-network连接;
–name 参数用于指定服务启动后的名称
–publish 参数用于映射对外服务端口
–replicas 参数用于指定该服务的副本数量
Ngnix表示基于ngnix镜像构建的服务
(4)在管理节点上,查看服务的两个运行副本运行情况
(5)外界访问服务
任务三、Volumes数据卷管理
一、Volumes数据卷使用
1、创建并管理数据卷
(1)创建一个名为my-vol的数据卷 (2)查看刚刚创建的数据卷
(3)核查数据卷(查看其详情) (4)删除数据卷
2、启动容器并加载数据卷
(1)查看本机容器和数据卷
(2)确认查看本机Docker文件系统中的容器和数据卷
(3)创建并启动一个容器,同时挂载一个数据卷
(4)再次查看本机容器和数据卷列表
(5)检查容器详情
(6)再次确认本机本机Docker文件系统中的容器和数据卷