阿里云的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

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

  1. proftpd启动失败提示unable to determine IP address of “xxx.com”

    proftpd启动失败提示unable to determine IP address of “xxx.com”这种proftpd启动失败的原因是无法解析后面主机的IP地址,解决方法是在DNS列表中增 ...

  2. 阿里云CentOS7.4启动Tomcat9没有报错,端口已经开放,但是浏览器一直等待响应解决办法7

    tomcat9,启动和退出均无报错.centOS7.4防火墙已关闭,阿里云防火墙已经开放端口,telnet测试服务器的端口也通过了,**浏览器访问以后没有提示"无法访问",而是一直 ...

  3. docker 容器挂载主机目录,访问出现 cannot open directory /mnt/home/webroot/: Permission denied 的解决办法

    问题原因及解决办法 原因是CentOS7中的安全模块selinux把权限禁掉了,至少有以下三种方式解决挂载的目录没有权限的问题: 1.在运行容器的时候,给容器加特权,及加上 --privileged= ...

  4. redis启动出错 Creating Server TCP listening socket 127.0.0.1:6379: bind: No error解决办法

    windows下安装Redis第一次启动报错: [2368] 21 Apr 02:57:05.611 # Creating Server TCP listening socket 127.0.0.1: ...

  5. 黄聪:VS2010启动程序提示文件加载 使用 简体中文(GB2312)编码加载文件解决办法

    vs2010 错误提示框:文件加载 使用 简体中文(GB2312)编码加载文件C:\Users\Administrator\AppData\Local\Temp\nxhgjasi.5au \Temp\ ...

  6. docker构建本地仓库后,无法登陆解决办法(CentOS/Ubuntu)

    docker版本为:Server Version: 1.12.6 从dockerhub上下载最新的registry镜像. 首先.构建registry 1.下载registry镜像 docker pul ...

  7. VirtualBOX启动错误the vm session was closed before any attempt to power it on解决办法

    昨天晚上笔记本休眠后,今天早上启动vm时,报错了. 点击详细启动错误:the vm session was closed before any attempt topower it on. 解决办法: ...

  8. 利用docker compose启动gitlab及runner

    添加docker compose配置文件 新建文件docker-compose.yml,输入如下内容: gitlab: image: 'gitlab/gitlab-ce:latest' contain ...

  9. docker 源码分析 一(基于1.8.2版本),docker daemon启动过程;

    最近在研究golang,也学习一下比较火的开源项目docker的源代码,国内比较出名的docker源码分析是孙宏亮大牛写的一系列文章,但是基于的docker版本有点老:索性自己就git 了一下最新的代 ...

随机推荐

  1. centos下添加环境变量和启动apache

    #修改环境变量文件 vi /etc/profile #文件内容末尾添上 PATH=/usr/local/php/bin:$PATH export PATH #修改后让环境变量生效 source /et ...

  2. 【python调用windows CLI】调用adb统计Android app的流量消耗

    主要记录python如何调用windows CLI 手机连接PC,adb devices可以看到手机sn 通过adb 获取指定app的processID UID 读取Android  /proc/ne ...

  3. [原创] Web UI 自动化日期控件的处理

    序 在构建自动化套件的过程中,日期操作是一件很重要也很频繁的事情.有的日期控件的div层级结构复杂,同一个类型的日期控件在多个子系统中的表现形式也大相径庭.多数工程师为了避免重复的工作,会封装抽象一个 ...

  4. 重构15-Remove Duplication(删除重复)

    这大概是处理一个方法在多处使用时最常见的重构.如果不加以注意的话,你会慢慢地养成重复的习惯.开发者常常由于懒惰或者在想要尽快生成尽可能多的代码时,向代码中添加很多重复的内容.我想也没必要过多解释了吧, ...

  5. 转: DH密钥交换和ECDH原理

    转自:http://www.tuicool.com/articles/em6zEb DH密钥交换和ECDH原理 时间 2013-06-24 18:50:55  CSDN博客 原文  http://bl ...

  6. OpenShare文档中心

    文档是企业重要的智力资产.在企业中,文档一般都以电子文档的形式存在,比如微软.doc格式,xls格式,ppt格式,pdf格式,纯文本.txt格式等:从内容上,可能是商务合同.会议记录.产品手册.客户资 ...

  7. javascript面向对象的理解(一)

    第一次在园子发文: 关于js面向对象的理解: 工厂方式是什么?构造函数是什么?原形链?对象的引用? 1.对象是什么? 在js接触的比较多的就是对象了,比如: var arr = []; arr.num ...

  8. JS内存泄露常见原因

    详细内容请点击 分享的笔记本-前端 开发中,我们常遇见的一些关于js内存泄露的问题,有时候我们常常会找半天找不出原因,这里给大家介绍简单便捷的方法 1.闭包上下文绑定后没有释放:   2.观察者模式在 ...

  9. 破解软件感悟-PE文件格式之实例总结(五)

    有很多介绍PE文件的文章,但是我打算写一篇关于输入表的文章,因为它对于破解很有用.     我想解释它的最好的方法是举一个例子,你可以跟着我逐步深入,一步一步的思考,最后你将完全明白,我选择了一个我刚 ...

  10. c#接口相关

    public interface I接口名 { void SaiHi(); void Hello(string msg); //以上是方法 string Name { get; set; } //以上 ...