Docker無法啓動: Error initializing network controller: list bridge addresses failed

安裝

安裝官方文檔進行安裝

問題

然後執行啓動命令:

systemctl start docker

報錯,無法啓動,提示使用命令查看詳細日誌:

jouralctr -xe

或者手動啓動查看啓動過程

sudo dockerd

發現關鍵的一句話:

failed to start daemon: Error initializing network controller: list bridge addresses failed: PredefinedLocalScopeDefaultNetworks List: [172.17.0.0/16 172.18.0.0/16 172.19.0.0/16 172.20.0.0/16 172

問題是docker創建網卡的IP地址可能被佔用,導致docker網卡無法創建

排查

執行命令查看路由表:

route -n

結果如下:

[root@4dim-test docker]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         218.18.153.129  0.0.0.0         UG    101    0        0 eth1
10.0.0.0        0.0.0.0         255.0.0.0       U     100    0        0 eth0
172.16.0.0      10.0.0.253      255.240.0.0     UG    0      0        0 eth0
192.168.0.0     10.0.0.253      255.255.0.0     UG    0      0        0 eth0
218.18.153.128  0.0.0.0         255.255.255.192 U     101    0        0 eth1

172.16的網段被佔用,網絡上有人提供的解決方案是刪除該條路由,但是對於我的這個服務器這條路由是不能刪除的,所以另外尋找其他方案。

解決

這篇文章有提到解決方案:

手動創建docker網卡,執行如下兩條命令:

ip link add name docker0 type bridge  
ip addr add dev docker0 172.1.0.1/16 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章