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
Docker无法启动 Could not find a free IP address range for interface 'docker0' 最方便的解决办法的更多相关文章
- proftpd启动失败提示unable to determine IP address of “xxx.com”
proftpd启动失败提示unable to determine IP address of “xxx.com”这种proftpd启动失败的原因是无法解析后面主机的IP地址,解决方法是在DNS列表中增 ...
- 阿里云CentOS7.4启动Tomcat9没有报错,端口已经开放,但是浏览器一直等待响应解决办法7
tomcat9,启动和退出均无报错.centOS7.4防火墙已关闭,阿里云防火墙已经开放端口,telnet测试服务器的端口也通过了,**浏览器访问以后没有提示"无法访问",而是一直 ...
- docker 容器挂载主机目录,访问出现 cannot open directory /mnt/home/webroot/: Permission denied 的解决办法
问题原因及解决办法 原因是CentOS7中的安全模块selinux把权限禁掉了,至少有以下三种方式解决挂载的目录没有权限的问题: 1.在运行容器的时候,给容器加特权,及加上 --privileged= ...
- 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: ...
- 黄聪:VS2010启动程序提示文件加载 使用 简体中文(GB2312)编码加载文件解决办法
vs2010 错误提示框:文件加载 使用 简体中文(GB2312)编码加载文件C:\Users\Administrator\AppData\Local\Temp\nxhgjasi.5au \Temp\ ...
- docker构建本地仓库后,无法登陆解决办法(CentOS/Ubuntu)
docker版本为:Server Version: 1.12.6 从dockerhub上下载最新的registry镜像. 首先.构建registry 1.下载registry镜像 docker pul ...
- 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. 解决办法: ...
- 利用docker compose启动gitlab及runner
添加docker compose配置文件 新建文件docker-compose.yml,输入如下内容: gitlab: image: 'gitlab/gitlab-ce:latest' contain ...
- docker 源码分析 一(基于1.8.2版本),docker daemon启动过程;
最近在研究golang,也学习一下比较火的开源项目docker的源代码,国内比较出名的docker源码分析是孙宏亮大牛写的一系列文章,但是基于的docker版本有点老:索性自己就git 了一下最新的代 ...
随机推荐
- UVa OJ 10300
Problem A Ecological Premium Input: standard input Output: standard output Time Limit: 1 second Memo ...
- java笔记 chapter1 java是什么,能干什么,有什么,特点,开发环境
一,java是什么 二,java能干什么 三,java有什么 四,java的特点 五,java的三大特性:虚拟机,垃圾回收和代码安全 六,构建JSE开发环境:下载安装jdk和配置环境变量 七,编写并运 ...
- Unity3D 使用 UI 的 Grid Layout Group 组件。
1.首先创建一个容器,用于存放列表项的内容. 这里使用 Panel 来做为容器. 这里要注意! “Grid Layout Group”是要增加在容器的游戏对象里. 同时,只有容器对象的子对象才有排列效 ...
- TCP/IP协议原理与应用笔记22:静态和动态路由选择
1. 静态路由选择: Static routing 管理员手工设置 管理员手动更新 不能保证路由的一致性和及时性 管理性强 没有路由开销 小型.变化缓慢网络 2. 动态路由选择 Dynamic rou ...
- 搭建本地Git服务器6步走
1. 在服务器上安装git和ssh 2. 在服务器上新建一个用户,比如就叫git sudo adduser git 3. 在服务器上新建一个目录来放置git仓库 mkdir gitrepo git i ...
- extjs 简单入门
中文网站:http://extjs.org.cn/ 英文网站:http://www.sencha.com/products/extjs/ 1.简介 extJS是一种主要用于创建前端用户界面,是一个基本 ...
- Linux常用命令之grep
标题:grep命令的使用 作用:grep可以解析一行文字,取得关键字,若该行存在关键字,就会整行列出. grep [-acinv] [--color=auto] '查找字符串' filename ...
- 转: 学习开源项目的若干建议(infoq)
转: http://www.infoq.com/cn/news/2014/04/learn-open-source 学习开源项目的若干建议 作者 崔康 发布于 2014年4月11日 | 注意:GTLC ...
- 转: ios app架构设计
http://keeganlee.me/post/architecture/20160107 看完这一系列文章后就知道怎么回答这类问题了: App架构设计经验谈:接口的设计 App架构设计经验谈:技术 ...
- IO输入输出 3
编写BinIoDemo.java的Java应用程序,程序完成的功能是:完成1.doc文件的复制,复制以后的文件的名称为自己的学号姓名.doc. package com.hanqi.test; impo ...