Docker中的网络与数据管理

实验目的要求

实验要求:

  1. Docker的网络管理
  2. Docker Swarm集群的使用
  3. Volumes数据卷的使用
    实验目的:
  4. 了解Docker中的网络、数据管理以及Docker Swarm的基本知识
  5. 掌握Docker中自定义的网络管理
  6. 掌握Volumes数据卷管理的基本使用

试验环境

  1. Java 1.8
  2. 三台Ubantu 20.02

试验内容

任务一 Docker网络管理

  1. 在Docker安装时,Docker就会自动创建三种网络,客户端可以通过$docker network ls指令查看。
    在这里插入图片描述

  2. Docker默认网络管理
    (1)创建并启动容器 $docker run -itd --name=networktest ubuntu
    (2)使用网络查看指令,查看网络详情 $docker network inspect bridge
    在这里插入图片描述
    在这里插入图片描述

  3. 自定义bridge网络
    (1)创建自定义网络 d o c k e r n e t w o r k c r e a t e − − d r i v e r b r i d g e i s o l a t e d n w , 创 建 完 之 后 查 看 docker network create --driver bridge isolated_nw,创建完之后查看 dockernetworkcreatedriverbridgeisolatednw,docker network ls
    在这里插入图片描述
    (2)使用自定义网络启动容器 $docker run --network=isolated_nw -itd --name=nwtest busybox,启动容器之后,使用指令docker inspect nwtest查看
    在这里插入图片描述
    在这里插入图片描述

(3)为容器添加网络管理 $docker network connection bridge nwtest
在这里插入图片描述
在这里插入图片描述
(4)断开容器网络连接 $docker network disconnection isolated_nw nwtest
(5)移除自定义网络docker network rm isolated_nw
在这里插入图片描述
4. 容器之间的网络通信
(1)创建两个使用默认的bridge网络的容器
$docker run -itd --name=containner1 busybox
$docker run -itd --name=container2 busybox
(2)创建一个使用自定义的isolated_nw网络
$docker run --network=isolated_nw -itd --name=container3 busybox
(3)为container2容器新增一个自定义的isolated_nw网络连接
$docker network connect isolated_nw container2
在这里插入图片描述

5.容器地址查看
(1)进入container2容器 d o c k e r a t t a c h c o n t a i n e r 2 , 使 用 指 令 docker attach container2,使用指令 dockerattachcontainer2,使ifconfig查看发现内部有两个网卡eth0和eth1,并分别对应的IP地址为172.17.0.6和172.18.0.2

在这里插入图片描述
(2)进入容器3和容器4,分别得到地址为172,17.0.5和172.19.0.2

在这里插入图片描述
在这里插入图片描述
6. 容器通信测试
(1)首先使用$docker start container1指令进入容器内部,同时使用ping 命令连接container3来查看是否能够通信。
在这里插入图片描述
(2)使用docker attach container2进入到容器2的内部,使用IP分别连接container1和container进行通信测试。

在这里插入图片描述
7.容器之间的网络通信
(1)进入到容器container2内部使用容器分别连接container1和container3进行通信测试。(由于虚拟机中间出现过问题,所以重新开始做了一遍,地址与前面发生了变化)

在这里插入图片描述

任务二 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,用于覆盖网络流量。
  2. 创建Docker Swarm集群
    (1)在名为manager1的Docker机器上创建Docker Swarm集群
    在这里插入图片描述
    (2)在管理结点上,使用docker node ls指令查看集群结点信息
    在这里插入图片描述
  3. 向Docker Swarm集群添加工作结点
    (1)启动另外两台Docker机器work1和work2,分别打开终端窗口,执行向集群中加入工作结点的指令
    在这里插入图片描述
    (2)在集群管理结点上执行“docker swarm join-token worker”指令进行查看
    在这里插入图片描述
    在这里插入图片描述
    (3)再次在集群管理结点上使用docker node ls指令查看集群结点信息
    在这里插入图片描述
  4. 向Docker Swarm集群部署服务
    (1)使用Docker Hub上自带的alpine镜像为例来部署集群服务
    在这里插入图片描述
  5. 查看Docker Swarm集群中的服务
    (1)在管理结点上通过docker service ls指令查看当前集群中的服务信息

在这里插入图片描述
(2)使用docker service inspect指令,查看部署的服务具体详情
在这里插入图片描述

(3)使用docker service ps 指令查看指定服务在集群结点上的分配和运行情况

在这里插入图片描述
6. 更改Docker Swarm集群服务副本数量
(1)在管理结点manager1上,更改服务副本数量 $docker service scale helloworld=5

在这里插入图片描述
7. 删除服务 $docker service rm helloworld
在这里插入图片描述

8.访问服务
(1)在集群管理结点manager1上,执行docker network ls执行查看网络列表
在这里插入图片描述
(2)在集群管理结点manager1上,创建以overlay为驱动的自定义网络

在这里插入图片描述
(3)在集群管理结点manager1上,再次部署服务
在这里插入图片描述
(4)在集群管理结点manager1上,使用docker service ps my-web指令查看服务的两个服务副本运行情况
在这里插入图片描述
(5)外界访问服务。打开浏览器,使用任意一台结点机器的“IP+8080”端口运行服务访问,都可以正常显示。
在这里插入图片描述

任务三 Volumes数据卷管理

1.创建并管理数据卷
(1)创建数据卷 $docker volume create my-vol
(2)查看数据卷 $docker volume ls

在这里插入图片描述

2.启动容器并加载数据卷
(1)查看本机容器和数据卷。在Docker主机终端分别使用docker ps -a和docker volume ls指令查看本地Docker机器上存在的容器和数据卷

在这里插入图片描述

(2)确认查看本机Docker文件系统中的容器和数据卷。
首先在Docker主机终端中将普通用户切换到root用户,然后进入“/var/lib/docker”目录,即Docker默认在本机上的文件系统目录查看信息。

在这里插入图片描述
(3)启动容器并加载数据卷。
使用–mount参数挂载数据卷
在这里插入图片描述
使用-v参数挂载数据卷
在这里插入图片描述
(4)再次查看本机容器和数据卷列表。
在Docker主机终端分别使用docker ps -a和docker volume ls 指令查看本地Docker机器上存在的容器和数据卷。
在这里插入图片描述
(5)检查容器详情
使用docker inspect指令查看容器详情
在这里插入图片描述
(6)再次确认本机docker文件系统中的容器和数据卷。
首先在Docker主机终端中将普通用户切换到root用户,然后进入“/var/lib/docker”目录,然后分别进入containers容器文件目录和volumes数据卷文件目录查看内容。
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大菜彩

家人们鼓励鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值