Docker跨主機(jī)容器通信(1)

使用路由機(jī)制打通網(wǎng)絡(luò)

1,請(qǐng)看網(wǎng)絡(luò)簡(jiǎn)圖

Paste_Image.png

2,因?yàn)閐ocker默認(rèn)網(wǎng)卡docker0啟動(dòng)在默認(rèn)的內(nèi)部ip為172.17.42網(wǎng)段,所以需要修改一下其中一臺(tái)宿主機(jī)(100.73.18.108)的默認(rèn)網(wǎng)絡(luò)。

vim /etc/sysconfig/docker-network
#修改docker啟動(dòng)參數(shù)(centos7下)
DOCKER_NETWORK_OPTIONS="--bip=172.18.42.1/16"
#在DOCKER_NETWORK_OPTIONS=后添加上面參數(shù)
service docker stop
#關(guān)掉docker服務(wù)
reboot
#重啟宿主機(jī)

3,等待宿主機(jī)重啟完成后,啟動(dòng)docker服務(wù)。

service docker start
#啟動(dòng)docker
ifconfig
#可以查看到docker0網(wǎng)卡的地址已經(jīng)被修改為 172.18.42.1

4,在兩臺(tái)宿主機(jī)上面分別創(chuàng)建容器,選用 ubutnu鏡像。
docker run -d 3f755ca42730 ping 127.0.0.1
#后臺(tái)啟動(dòng)容器
docker exec -it c4ce70de9fa2 /bin/bash
#exec方式進(jìn)入容器內(nèi)部
ifconfig
#在容器內(nèi)查看網(wǎng)絡(luò)ip地址,并測(cè)試能否ping通,結(jié)果是無(wú)法ping通

5,在兩臺(tái)宿主機(jī)上添加路由規(guī)則

route add -net 172.17.0.0/16 gw 100.73.18.106
#在100.73.18.108上面添加
route add -net 172.18.0.0/16 gw 100.73.18.108
#在100.73.18.106上面添加

6,在宿主機(jī)100.73.18.106的容器(172.17.0.1)ping 宿主機(jī)100.73.18.108的容器(172.18.0.1),發(fā)現(xiàn)可以連通,反之,同樣可以。

Paste_Image.png

7,此方案的優(yōu)點(diǎn)是配置簡(jiǎn)單,性能還可以,缺點(diǎn)是與宿主機(jī)現(xiàn)有網(wǎng)絡(luò)混淆在一起,失去了靈活性。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)載自 http://blog.opskumu.com/docker.html 一、Docker 簡(jiǎn)介 Docke...
    極客圈閱讀 10,543評(píng)論 0 120
  • Docker — 云時(shí)代的程序分發(fā)方式 要說(shuō)最近一年云計(jì)算業(yè)界有什么大事件?Google Compute Engi...
    ahohoho閱讀 15,627評(píng)論 15 147
  • 五、Docker 端口映射 無(wú)論如何,這些 ip 是基于本地系統(tǒng)的并且容器的端口非本地主機(jī)是訪問(wèn)不到的。此外,除了...
    R_X閱讀 1,797評(píng)論 0 7
  • 天氣漸暖,眼看新房六月就要到手了,為了拿到新房能即刻開(kāi)工,本裝修界小白已早早準(zhǔn)備起來(lái)了。買(mǎi)了簡(jiǎn)簡(jiǎn)單單龍貓的本子和筆...
    冬芳未萌閱讀 214評(píng)論 0 0
  • 精神家園的詞語(yǔ)釋義,叫做心靈獲得安慰的地方精神寄托之所。精神家園之說(shuō)據(jù)說(shuō)是來(lái)源于一個(gè)故事:傳說(shuō)中講一個(gè)永世流浪的小...
    辛平閱讀 828評(píng)論 0 3