Docker无法启动 Could not find a free IP address range for interface 'docker0' 最方便的解决办法

阿里云的CentOS 6.5上安装Docker会无法启动,如果直接运行docker -d会看到错误提示:Could not find a free IP address range for interface ‘docker0‘.

原因就是docker自动尝试的建立bridge的ip段正好被阿里云的路由表完全占据了

详细原因可以参见这个帖子:http://hanjianwei.com/2014/07/30/docker-on-aliyun/

 

网上有好多类似的解决方法,不过好麻烦,这里主要说下最方便的解决方法

先su到root

找一下docker的配置文件: find / -name "docker"

一般会在 /etc/sysconfig/docker

编辑这个文件 vi /etc/sysconfig/docker

修改other_args=这一行为:other_args=-bip=192.168.100.1/24

保存退出

重启docker没成功

修改路由表之后 Docker 成功启动。

service docker restart

参考:http://hanjianwei.com/2014/07/30/docker-on-aliyun/

http://www.bubuko.com/infodetail-969451.html

http://bbs.aliyun.com/read/152090.html?ordertype=desc&displayMode=1

http://blog.jamespan.me/2015/07/25/docker-on-the-cloud/

http://blog.csdn.net/minimicall/article/details/40119177

方法二:新建一个bridge也可以解决

https://docs.docker.com/articles/networking/#bridge-building

我想要测试使用自己的私有库,由于私有库没有配置证书,所以需要在Docker的启动项中修改配置,取消掉证书认证DOCKER_OPTS="-- insecure-registry 10.0.40.16:5000"。但是在启动Docker进程时,发现没有将DOCKER_OPTS的内容加载进来。

然后我又修改 /etc/default/docker ,在里面增加了

DOCKER_OPTS="--insecure-registry 10.0.40.16:5000"

再次启动Docker进程,DOCKER_OPTS的选项还是没有生效,什么情况?

接着,我再次修改另一个配置文件,/etc/init.d/docker ,同样,加入

DOCKER_OPTS="--insecure-registry 10.0.40.16:5000"

再启动,还是没有生效。。。

再修改另一个配置文件:/etc/init/docker.conf , 加入:

DOCKER_OPTS="--insecure-registry 10.0.40.16:5000"

再重启Docker进程,还是没有生效,无语了。

最后,在google上,查找资料,找到了一个连接,还是Docker的官方档:https://docs.docker.com/articles/systemd/

发现还可以修改:/lib/systemd/system/docker.service ,在里面增加:

EnvironmentFile=-/etc/default/docker

然后,修改: ExecStart=/usr/bin/docker -d -H fd://  ,改成:  ExecStart=/usr/bin/docker -d -H fd:// $DOCKER_OPTS

再次启动,终于生效了,我只能说这配置文件真多,主要是都是误导人的,真坑!

参考:

http://www.linuxidc.com/Linux/2015-08/121148.htm

https://docs.docker.com/articles/systemd/

https://docs.docker.com/articles/networking/#bridge-building

http://blog.csdn.net/yuanchao99/article/details/43114927

http://blog.csdn.net/minimicall/article/details/40119177

原文地址:https://www.cnblogs.com/wawahaha/p/4926642.html