主頁 > 知識庫 > Docker跨主機容器通信overlay實現過程詳解

Docker跨主機容器通信overlay實現過程詳解

熱門標簽:繽客網注冊時地圖標注出不來 地圖標注需要現場嗎 鶴壁電銷外呼系統怎么安裝 工廠位置地圖標注 網站上插入地圖標注內容 地圖標注企業(yè)名稱侵權案件 重慶營銷外呼系統排名 400電話辦理哪家好廠商 企業(yè)400電話辦理哪正規(guī)

同樣是兩臺服務器:

準備工作: 

設置容器的主機名

consul:kv類型的存儲數據庫(key:value)
docker01、02上:
vim /etc/docker/daemon.json
{
 "hosts":["tcp://0.0.0.0:2376","unix:///var/run/docker.sock"], 這行改了要修改自己的docker配置文件
 "cluster-store": "consul://10.0.0.11:8500",
 "cluster-advertise": "10.0.0.11:2376"   另外一臺寫自己的ip即可
}
vim /etc/docker/daemon.json
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --containerd=/run/containerd/containerd.sock 這行改成這樣,兩臺的都要改
systemctl daemon-reload
systemctl restart docker

 docker01上:

docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap 這條命令在設置容器的主機名之后做
[root@docker1 centos_zabbix]# docker images
REPOSITORY              TAG         IMAGE ID      CREATED       SIZE
10.0.0.11:5000/kode         v2         6914fda5fd44    4 hours ago     502MB
kode                 v2         6914fda5fd44    4 hours ago     502MB
10.0.0.11:5000/centos6.9_nginx_ssh  v3         92b1087df3f5    13 hours ago    431MB
centos6.9_nginx_ssh         v3         92b1087df3f5    13 hours ago    431MB
centos6.9_nginx_ssh         v2         6307e23ee16d    13 hours ago    431MB
<none>                <none>       b94c822488f9    13 hours ago    431MB
centos6.9_nginx_ssh         v1         f01eeebf918a    13 hours ago    431MB
<none>                <none>       54167f1d659b    13 hours ago    431MB
<none>                <none>       71474e616504    13 hours ago    430MB
centos6.9_ssh            v2         03387f99f022    14 hours ago    307MB
<none>                <none>       82d0e9ce844b    14 hours ago    195MB
kode                 v1         c0f486ac58fe    15 hours ago    536MB
progrium/consul           latest       09ea64205e55    4 years ago     69.4MB  這里有了
[root@docker1 centos_zabbix]# docker ps -a
CONTAINER ID    IMAGE        COMMAND         CREATED    STATUS            PORTS                     NAMES
1016753ee64d    progrium/consul   "/bin/start -server …"  4 minutes ago    Exited (255) 3 minutes ago  53/tcp, 53/udp, 8300-8302/tcp, 8400/tcp, 8301-8302/udp, 0.0.0.0:8500->8500/tcp  consul

最后在頁面上訪問:

2)創(chuàng)建overlay網絡

docker network create -d overlay --subnet 172.16.1.0/24 --gateway 172.16.1.254 ol1 這個網段不能和宿主機上相同,并且隨便在一臺上執(zhí)行這個命令即可

查看容器的網絡,有沒有出現overlay

[root@docker1 shell]# docker network ls
NETWORK ID     NAME        DRIVER       SCOPE
e480a4fe5f4b    bridge       bridge       local
0a3cbfe2473f    host        host        local
4e5ccdc657e1    macvlan_1      macvlan       local
aab77f02a0b1    none        null        local
8ae111afded7    ol1         overlay       global

3)啟動容器測試

一臺上:
docker run -it --network ol1 --name test01 centos6.9_ssh:v2 /bin/bash
另外一臺上:
docker run -it --network ol1 --name test02 centos6.9_ssh:v2 /bin/bash
 
之后可以通過test01和test02之間聯通

之后可以通過test01和test02之間聯通  

真實原理:

每個容器有兩塊網卡,eth0實現容器間的通訊,eth1實現容器訪問外網 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:東莞 常州 渭南 日照 96 棗莊 鹽城 克拉瑪依

巨人網絡通訊聲明:本文標題《Docker跨主機容器通信overlay實現過程詳解》,本文關鍵詞  Docker,跨,主機,容器,通信,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Docker跨主機容器通信overlay實現過程詳解》相關的同類信息!
  • 本頁收集關于Docker跨主機容器通信overlay實現過程詳解的相關信息資訊供網民參考!
  • 推薦文章