如何在Docker Toolbox上更改docker0桥接接口的ip地址

时间:2016-12-21 20:16:01

标签: docker windows-7

我正在使用Docker Toolbox for Windows 7,我正在尝试更改docker0接口的ip地址,但是很难找到适用于Windows 7的确切解决方案。任何人都可以帮我找到解决方案。

Client:
 Version:      1.12.5
 API version:  1.24
 Go version:   go1.6.4
 Git commit:   7392c3b
 Built:        Fri Dec 16 06:14:34 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.12.5
 API version:  1.24
 Go version:   go1.6.4
 Git commit:   7392c3b
 Built:        Fri Dec 16 06:14:34 2016
 OS/Arch:      linux/amd64

谢谢。

1 个答案:

答案 0 :(得分:2)

要更改IP地址 Docker 将在其docker0接口上设置,您必须使用定义CIDR的--bip选项(例如。{ {1}}),请参阅"Customize the docker0 bridge" in Docker user guide

Docker Toolbox使用基于Boot2Docker操作系统的Tiny Core Linux(在虚拟机中运行)。

Docker 守护程序在开始之前阅读--bip=10.32.57.1/24(请参阅"Local Customisation" in Boot2Docker's FAQ),其中/var/lib/boot2docker/profile变量已准备好填充您的自定义设置。

只需将EXTRA_ARGS添加到--bip=...的值部分,然后重新启动该守护程序。

以下命令(键入 Docker Quickstart终端)将停止 Docker 守护程序,删除任何现有规则,删除界面,添加{{1} } EXTRA_ARGS的选项并重启守护进程:

--bip

Boot2Docker VM重新启动之间保留/var/lib/boot2docker/profile的内容,因此运行此命令一次就足够了)

您可以查看:

docker-machine ssh default "\
    sudo /etc/init.d/docker stop ; \
    sudo iptables -t nat -F POSTROUTING ; \
    sudo ip link del docker0 ; \
    sudo sed -i \"/^EXTRA_ARGS='\\$/a --bip=10.32.57.1/24\" /var/lib/boot2docker/profile ; \
    sudo /etc/init.d/docker start \
    "

如果有人需要在Debian上进行相同的操作(不使用 Boot2Docker ):

Sysvinit

/var/lib/boot2docker

对于 systemd

docker-machine ssh default "ip a show dev docker0"

然后(对于 Sysvinit systemd ):

cat >> /etc/default/docker <<EOT
# Change Docker network bridge:
DOCKER_OPTS="--bip=10.32.57.1/24" # "3257" = "dckr" on a phone keyboard
EOT