亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Docker網絡上篇-網絡介紹

標簽:
Java

通过前面的学习,我们已经可以把自己写的微服务项目通过dockerfile文件方式部署到docker上面了。那么微服务之间通信,怎么通信的?是在同一个网络还是在不同的网络环境下?docker中怎么配置网络环境呢?本文咱们就一起学学docker网络。

docker网络是什么?

在不启动docker之前,我们来看看宿主机的网络情况。使用命令:ifconfig

https://img4.sycdn.imooc.com/63aa58f50001fcec05530296.jpg

说明:

ens33:是宿主机的ip.比如我们想通过我们物理机Windows连接到虚拟机宿主机的话,就是用的是这个ip.

lo:local,本地地址。

virbro:centos在虚拟化的时候,会安装一个以网桥连接的私网地址。默认就是192.168.122.1。是做虚拟机网桥使用的。

启动docker后,在查看宿主机网络情况.命令依然是ifconfig

https://img1.sycdn.imooc.com/63aa58f900015c4e05530340.jpg

我们发现会多出一个 docker0的网卡。这个就是本章节需要讲解的。

Docker网络常用的命令:

使用命令查看:

docker network ls

https://img3.sycdn.imooc.com/63aa58ff00017d4a05530137.jpg

bridge、host、none是默认创建的3大网络模式。

我们先来help下,看看docker network都有哪些命令

https://img1.sycdn.imooc.com/63aa59020001789505530277.jpg


命令:

https://img4.sycdn.imooc.com/63aa590700011db505530152.jpg

https://img1.sycdn.imooc.com/63aa590e0001988905530153.jpg

查看命令:

https://img4.sycdn.imooc.com/63aa5912000199f205530236.jpg

docker网络能干嘛?

https://img4.sycdn.imooc.com/63aa59160001857405530060.jpg

网络模式

docker网络有以下几种模式:

https://img1.sycdn.imooc.com/63aa5919000188dd05530272.jpg

其中比较常用的是bridge和host模式。

https://img3.sycdn.imooc.com/63aa591e000107d905530135.jpg

docker 网络底层ip和容器映射关系

先启动两个ubuntu

https://img2.sycdn.imooc.com/63aa592000017c7a05530061.jpg

查看网络情况:

docker inspect u1

或者只查看倒数20行

docker inspect ul | tail -n 20

https://img4.sycdn.imooc.com/63aa59240001bbe305530174.jpg

我们再来看看u2的网络设置

https://img2.sycdn.imooc.com/63aa592700011c1d05530215.jpg

假设我们把uw rm -f

https://img1.sycdn.imooc.com/63aa592b0001fccd03990052.jpg

然后我们在启动一个u3

https://img2.sycdn.imooc.com/63aa592f0001f02605530035.jpg

再来看看U3的ip:

https://img4.sycdn.imooc.com/63aa59330001d12305530304.jpg

哇哦!ip是0.3。我们发现这个时候u3的ip竟然复用了u2的ip.这是多么可怕。

比如,在实际中,u2上面安装的是mysql.u2宕机后,创建了u3,向redis集群使用。但是,项目中写的ip还是172.17.0.3来连接数据库。那么u3启动后,是redis服务。程序连接MySQL也来找0.3。是不是很可怕。所以,在服务中,写死ip的需要注意。

所以,在实际中,我们在规划服务的时候,ip应该写死的。

那么怎么处理呢?我们会用到

docker network create 网络名称

https://img2.sycdn.imooc.com/63aa593700013b1f05530176.jpg

我们创建指定的网络名称。然后设置ip.其他同一类的都可以使用这个网络名称(网络范围内)。通过网络服务来连接。



點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
13
獲贊與收藏
24

關注作者,訂閱最新文章

閱讀免費教程

  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消