更改docker容器的IP地址

时间:2013-12-25 09:32:49

标签: networking docker

当我启动docker容器时,我的网络位于10.0.0.0,它们有一组不同的IP地址(172.17.42.1)

如何让我的容器在同一个10.0.0.0网络上启动

我已经配置了br0并且它是静态的,我希望docker0共享相同的ip范围,以便它将ip地址分配给同一网络上的容器

4 个答案:

答案 0 :(得分:7)

我希望这个链接可以帮到你 的 http://jpetazzo.github.io/2013/10/16/configure-docker-bridge-network/

简而言之,只需添加 / etc / network / interfaces 以下内容:

auto docker0
iface docker0 inet static
    address 172.30.0.1
    netmask 255.255.255.0
    bridge_ports dummy0
    bridge_stp off
    bridge_fd 0

然后重新启动界面,或重新启动PC。

ifdown docker0
ifup docker0

答案 1 :(得分:5)

已经接受回答并不是一个真正的答案,只是一个链接。所以我会提供适合我的解决方案。需要注意的是,解决方案可能会被docker upgrade覆盖。系统会询问您是否在升级软件包时更换docker配置。 配置路径从Ubuntu 15.10开始有效。

sudo vim /etc/default/docker

将此行添加到文件

DOCKER_OPTS="--bip=10.66.33.10/24"

然后重新启动
重启后启动一个容器

docker run -it --name t2 jangorecki/r-base-dev /bin/bash

并检查容器的IP

docker inspect --format '{{ .NetworkSettings.IPAddress }}' t2

答案 2 :(得分:1)

在我的Centos容器上,我这样做:

docker exec -it c1 bash -c "echo -e 'IPADDR=172.17.0.4 \n HOSTNAME=c1' >> /etc/sysconfig/network-scripts/ifcfg-eth0; /etc/init.d/network restart";

答案 3 :(得分:0)

真正的答案是对此的答案:...并且正在工作,自我测试

How to change the IP address of a docker after creating it?

还将答案标记为解决方案假设容器是某个发行版(基于debian / ubuntu),并且其中安装了很多网络工具! 假设是所有... -ups

的母亲