docker swarm 集群更改docker_gwbridge子網(wǎng)

docker_gwbridge默認使用172.18.0.0/16作為子網(wǎng)范圍,但是會遇到 host 所在網(wǎng)絡(luò)環(huán)境也存在172.18.0.0/16的情況,因此需要修改docker_gwbridge的子網(wǎng)范圍,以避免正常172.18.0.0/16網(wǎng)段終端的連接問題。

環(huán)境:

  • Docker 1.12.6

  • Docker swarm mode 開啟

一、docker_gwbridge介紹

docker_gwbridge是一個本地橋接網(wǎng)絡(luò),在以下兩種情況會自動創(chuàng)建:

  1. 初始化或者加入一個 swarm 集群時,用來在不同 hosts 主機的不同節(jié)點間進行通信;

  2. 再容器中的所有網(wǎng)絡(luò)都不能訪問外部時,Docker 會將docker_gwbridge網(wǎng)絡(luò)加入到容器中,用來訪問外部網(wǎng)絡(luò)或者其他的集群節(jié)點。

二、操作步驟

1. 更改docker_gwbridge網(wǎng)段

// 停止所有服務(wù),沒有測試不停服務(wù)直接停止集群
$ docker service rm ***

//讓節(jié)點離開swarm mode,兩臺機器都要做!兩臺機器都要做!
$ docker swarm leave --force

// docker network disconnect docker_gwbridge gateway_ingress-sbox -f //需要加-f,否則會說找不到這個容器

// 刪除原有的docker_gwbridge網(wǎng)絡(luò)
$ docker network rm docker_gwbridge

// 重新創(chuàng)建docker_gwbridge網(wǎng)絡(luò),兩臺機器都要做!兩臺機器都要做!
$ docker network create --subnet 192.168.18.0/24 \
--opt com.docker.network.bridge.name=docker_gwbridge \
--opt com.docker.network.bridge.enable_icc=false \
--opt com.docker.network.bridge.enable_ip_masquerade=true \
docker_gwbridge

$ docker swarm init --advertise-addr 172.16.36.43
// 按照提示加入另一節(jié)點

加完網(wǎng)絡(luò)我還重啟了一下

2. 重啟服務(wù)

按照20170112升級 Docker 的操作步驟進行主要有:

  1. 創(chuàng)建 overlay 網(wǎng)絡(luò)
docker network create --driver overlay proxy
docker network create --driver overlay redmine_net
docker network create --driver overlay mongo_net
  1. 創(chuàng)建docker flow proxy服務(wù)器-反向代理

  2. 創(chuàng)建 gogs 、redmine 服務(wù)并注冊域名

  3. 創(chuàng)建 tinyci3.3 服務(wù)并注冊域名

  4. 使用 ci.yncic.com 進行生產(chǎn)系統(tǒng)和測試系統(tǒng)的啟動并手動注冊

參考

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容