因阿里云服务器VPC默认占用了172.16.0.0/16 网段,与Docker里的网段相同,导致Docker里无法连接VPC服务器。后来找到的解决方案是修改Docker的默认网段。

由于Docker默认网段是172.16.0.0/16 ,我们可以修改为其他网段。

如何修改

Docker for mac

如果本地环境是 Docker for mac,依次打开 Preferences -> Daemon -> Advanced ,增加配置 "bip" : "172.16.10.1/24",从而避免网段冲突的问题。

docker-machine

如果使用的docker-machine,请使用docker-machine ssh进入虚拟机,编辑文件/etc/docker/daemon.json,增加 {"bip" : "172.16.10.1/24"},然后退出虚拟机,重启docker-machine即可成功修改网段。

修改成功后,在docker里使用ping命令,就可以ping通VPC网段了。通过ifconfig也可以发现默认的网段不再是172.16.x.x 了:

~$ ifconfig
docker0 Link encap:Ethernet HWaddr 02:42:48:02:F1:60
inet addr:172.16.10.1 Bcast:172.16.10.255 Mask:255.255.255.0
inet6 addr: fe80::42:48ff:fe02:f160/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:578 (578.0 B)

其它

如果发现docker内访问某个地址超时,可以使用ping命令,如果Ping不通,使用ifconfig看看是不是有网桥占用了网段。使用ifconfig xxx down可以停用冲突的网卡:

ifconfig br-599560de6ff8 down

彻底的解决办法就是删除掉不用的网桥,参考:http://hujao.com/2018/07/27/docker-network/

Docker修改默认网段的更多相关文章

  1. 如何修改Docker的默认网段?

    背景 公司的服务器全部都是购买的阿里云ECS主机,默认内网网段为172.16.0.0/12,测试服上的服务基本都是使用Docker部署的. 之前的同事在该机器上安装的Docker全部都是默认配置,网段 ...

  2. Docker修改默认IP

    Docker修改默认IP 删除原有配置 sudo systemctl stop docker sudo ip link set dev docker0 down sudo brctl delbr do ...

  3. Docker修改默认的网段

    一,问题 docker安装后默认的网段是172.17网段的,和真实环境网段冲突导致本机电脑无法连接docker机器. 二,解决办法 修改docker默认网段 1,先把docker停止 systemct ...

  4. Docker 修改默认存储路径的一个方法

    1. 前期安装创建centOS的虚拟机时发现自己对linux的挂载点不清楚, 造成挂载点的分配不太均匀,如图: root / 节点的大小设置的比较小 /home路径设置的一直比较大 但是docker ...

  5. Docker 修改默认存储位置

    首先使用 docker info 查看 docker 的基本信息 sudo docker info Containers: 0 Images: 5 Storage Driver: devicemapp ...

  6. docker修改默认存储位置

    前言:我这是默认安装的docker,所以其存放位置是/var/lib/docker,你可以发现是在/下面,之后你用docker 拉取的镜像文件也存放在这下面,这样就很快导致/空间爆满 1.修改配置文件 ...

  7. Docker修改默认存储位置(转)

    方法一.软链接 默认情况下Docker的存放位置为:/var/lib/docker 可以通过下面命令查看具体位置: sudo docker info | grep "Docker Root ...

  8. [转]Docker修改默认时区

    本文转自:https://www.jianshu.com/p/004ddf941aac 前言 前段时间把公司部分项目迁移到了docker 容器里.查看ngixn反向代理的log时发现时间与正确时间相差 ...

  9. centos docker 修改默认存储路径

    1.修改配置 将--graph /mnt/docker添加在docker.service文件中的ExecStart字段后面,其中/mnt/docker为你需要修改的存储目录 $ vim /usr/li ...

随机推荐

  1. Django通过字段获取关联模型

    #根据字段获取关联表 filter_field_obj=self.model._meta.get_field(filter_field) print('filter_field_obj:',filte ...

  2. centos 7安装java开发环境

    https://jingyan.baidu.com/article/29697b91660672ab20de3c15.html 自带版本是有问题的~

  3. PYthon第十二天

    1. 生成器 生成器的本质是迭代器, 最简单的生成器函数如下: def foo(x): 1-4行定义了一个简单的生成器函数 yield x+1 yield 和 return 不同, return 结束 ...

  4. 关闭浏览器时提示的javascript事件

    onbeforeunload事件 它是这样用的: <script language="javascript"> g_blnCheckUnload = true; fun ...

  5. 关于sql中如何动态加WHERE条件

    SELECT row_number()OVER(ORDER BY FromLoc) RowIndex,*  FROM @TaskTable   WHERE 1=1 AND CASE WHEN @Loc ...

  6. springmvc为什么是线程不安全的

    1.因为springmvc默认是单例的,所以会有线程安全的问题,如果存在全局变量,因为全局变量是存在方法区的,而局部变量是放在栈中的,方法区是所有线程公用的,而每个线程都有属于自己的栈.所以如果使用单 ...

  7. python 练习1

    题目: 1.输入用户名密码2.认证成功后显示欢迎信息3.输错三次后锁定 #!/usr/bin/env python import sys,pickle account = {'wyh':123,'cl ...

  8. tensorflow nan

    https://github.com/tensorflow/tensorflow/issues/3212 NaNs usually indicate something wrong with your ...

  9. python参数

    1.形参变量和实参 形参变量:只有在被调用时才分配内存单元,在调用结束时,即释放所分配的内存单元,因此,形参只在函数内有效,函数调用结束返回主调用函数后则不能再使用该形参变量. 实参:可以是常量,变量 ...

  10. 在excel中如何利用vba通过网址读取网页title(网址是https的)?

    昨天在百度知道上提了这个问题,我保存了些百度知道我回答的网址,想利用excel直接读取出网址的title,请问vba代码怎么写?(要支持https的) excel大神帮我回答了,在这记录下: Func ...