部署Harbor主機與容器網路不通問題
阿新 • • 發佈:2020-11-20
Harbor部署步驟:https://www.cnblogs.com/wujiest/p/14009706.html
問題簡述:正常按照部署步驟即可正常訪問,但我部署完之後,瀏覽器無法訪問,同時檢查宿主機發現也無法ping通容器,並且telnet不通埠,開始排查問題所在。
1、檢查firewalld以及iptables規則
首先看到firewalld已經是關閉的狀態,這裡檢視iptables的規則。
input規則預設允許,docker-proxy貌似也沒看出什麼問題
2、檢查docker狀態
# docker info
先把這些警告處理掉,修改sysctl.conf配置檔案
# vim /etc/sysctl.conf ## 新增如下內容 net.bridge.bridge-nf-call-ip6tables=1 net.bridge.bridge-nf-call-iptables=1 net.bridge.bridge-nf-call-arptables=1 net.ipv4.ip_forward=1 執行命令生效 # sysctl -p
當然這裡網路還是不通
3、檢查網橋
使用brctl命令,先執行yum installbridge-utils -y 安裝軟體
brctl show
這是啟動harbor容器之後的,因為沒儲存之前出問題的圖,所以只能手動改成之前有問題的情況。
對比沒啟動容器前的狀態
我們可以看到,bridge id在容器啟動前後沒有任何變化,說明docker的網路存在問題
4、解決方式
刪掉bridge,重新建立一個新的網橋
## 步驟 ## 停止docker # service docker stop ## 關閉br-4608e1585b83裝置 # ip link set dev br-4608e1585b83 down ## 刪除網橋 # brctl delbr br-4608e1585b83 ## 新建網橋 # brctl addbr br-4608e1585b83 ## 新增IP地址 # ip addr add 172.18.0.1/16 dev br-4608e1585b83 ## 開啟裝置 # ip link set dev br-4608e1585b83 up
# service docker start
再次執行brctl show,bridge id發生了改變
主機正常ping通容器網路