docker中的网络与数据管理

目录

  1. docker网络管理
  2. docker swarm集群
  3. docker数据管理

在开始下面介绍之前,首先要配置好虚拟机的网络,保证ping www.baidu.com正常

**

1.docker网络管理

**
**

1.1 docker默认网络管理

**
docker安装时会自动创建三种网络(bridge,host和none,其中bridge可以与宿主机通信从而实现与互联网通信,而另外两种不能与外界网络通信)

这里我出了一个错误,下面是解决方法


下面演示一个bridge网络管理实例
创建并启动容器

使用网络查看指令查看网络属性


**

1.2 自定义网络

**
创建自定义网络

使用自定义网络启动容器



为容器添加网络管理


断开容器网络连接


移除自定义网络
docker network rm isolated_nw

**

1.3容器间的网络通信

**
创建容器
创建bridge网络的容器

创建自定义isolated_nw网络的容器

为container2新增一个自定义网络isolated_nw

容器地址查看
退出容器CTRL+p+q



容器通信
在container2内部连接container1和container3进行通信测试

在container1测试连接container3

结论:不同容器之间通信必须在同一个网络环境下;默认bridge使用容器IP可以通信,但无法使用容器名称通信;而是用自定义网络同时可以使用容器ip和容器名称通信(最后这句官方的确是这样介绍的,但我尝试了好多次不知道怎么回事,就是没办法在自定义网络实现使用容器名称通信,后续我会继续补充,如果知道原因的伙伴,麻烦写下原因交流)

默认网络下使用–link参数可以进行容器名称通信


**

2.Docker Swarm集群

**
**

Docker Swarm使用

**

2.1.1 环境搭建
准备3台Ubuntu系统主机,,并都安装docker和可以连接网络(docker版本1.12以上)
安装ssh:教程 为了方便后续工作
修改主机名称(暂时可以临时修改):教程
三台主机名分别是manager1,worker1和worker2

2.1.2 创建Docker Swarm集群
分别使用Xshell连接到虚拟机
进入manager1创建一个管理节点

2.1.3 向Docker Swarm集群添加工作节点
进入到worker1和worker2分别输入manager1红框代码
这句代码是上面manager1红色部分,如果忘记了,可以在管理节点 docker swarm join-token worker 查看

回到manager1上

2.1.4 向Docker Swarm集群部署服务

2.1.5 查看Docker Swarm集群中的服务

2.1.6 更改Docker Swarm集群服务副本数量

2.1.7 删除服务
docker service rm helloworld
2.1.8 访问服务
在manager1上,可以看出分别增加bridge和overlay的网络。在集群中没有指定网络,会默认连接到ingress的网络,实际开发中,则使用自定义的overlay网络

在manager1上创建以overlay的自定义网络

部署my-web服务

可以看到,已经部署成功,该服务会随机分配到任意两个节点上
注意:前面创建的自定义网络,会随工作节点任务存在而存在;意思是如果工作节点上的任务移除,该自定义网络也会移除

外界访问服务
打开浏览器,任意一台节点机器的IP+8080都可以进行服务访问



**

Docker数据管理

**
**

Volumes数据卷使用

**
这里本来选择manager1做后面实验,但做到一半发现后面需要删除容器和数据卷,果断放弃manager1,选择worker2,重启worker2,下面命令没有任何影响。

  1. 创建并管理数据卷

    查看指定数据卷详情

    删除数据卷
  2. 启动容器并加载数据卷
    查看本机的容器和数据卷(停止所有无关容器并删掉),为了避免后面示例干扰



    切换到root用户,进入/var/lib/docker
    启动容器并挂载数据卷

    查看本机容器和数据卷

    检查容器详情

    进入/var/lib/docker目录,分别查看container容器而文件目录和volumes数据卷文件目录
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值