创build默认“网桥”networking时出错:无法创buildnetworking(docker0):与networking(docker0)冲突:networking具有相同的网桥名称

停泊docker后,拒绝再次启动。 它抱怨说,另一个名为docker0的桥梁已经存在:

level=warning msg="devmapper: Base device already exists and has filesystem xfs on it. User specified filesystem will be ignored." level=info msg="[graphdriver] using prior storage driver \"devicemapper\"" level=info msg="Graph migration to content-addressability took 0.00 seconds" level=info msg="Firewalld running: false" level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set a preferred IP address" level=fatal msg="Error starting daemon: Error initializing network controller: Error creating default \"bridge\" network: cannot create network fa74b0de61a17ffe68b9a8f7c1cd698692fb56f6151a7898d66a30350ca0085f (docker0): conflicts with network bb9e0aab24dd1f4e61f8e7a46d4801875ade36af79d7d868c9a6ddf55070d4d7 (docker0): networks have same bridge name" docker.service: Main process exited, code=exited, status=1/FAILURE Failed to start Docker Application Container Engine. docker.service: Unit entered failed state. docker.service: Failed with result 'exit-code'. 

使用ip link del docker0 ,然后启动ip link del docker0会导致与另一个id相同的结果。

对我来说,我降级了我的操作系统(在这种情况下是Centos Atomic Host),遇到了这个错误信息。 较老的Centos Atomic的docker是1.9.1。 在运行降级之前,我没有运行docker容器或镜像。

我简单地跑下面,docker工人又高兴起来:

 sudo rm -rf /var/lib/docker/network sudo systemctl start docker 

更多信息。

问题似乎在/var/docker/network/ 。 有很多sockets存储,通过它的旧ID参考桥。 为了解决这个问题,你可以删除所有套接字,删除接口,然后启动docker, 但是所有的容器都会因为套接字不存在而拒绝工作。 就我而言,我并不关心我的无状态容器,所以这就解决了这个问题:

 ip link del docker0 rm -rf /var/docker/network/* mkdir /var/docker/network/files systemctl start docker # delete all containers docker ps -a | cut -d' ' -f 1 | xargs -n 1 echo docker rm -f # recreate all containers