2016-11-10 420 views
4

停止docker后,它拒绝再次启动。据投诉那个叫docker0已经又一座桥梁存在:创建默认“网桥”网络时出错:无法创建网络(docker0):与网络冲突(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然后开始搬运工导致与另一个ID相同的结果。

回答

1

该问题似乎在/var/docker/network/。有很多存储的套接字通过旧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 
6

对我来说,我降级我的OS(在这种情况下Centos的原子主机)和整个此错误消息来了。较老的Centos Atomic的码头工人是1.9.1。在运行降级之前,我没有运行Docker容器或图像。

我只是跑下面和泊坞窗很高兴再次:

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

More info.