我正在使用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
谢谢。
答案 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