因为官方没有提供直接修改虚拟机IP 地址的方法,所以只能曲线救国,在 boot2docker启动的时候加一段shell

这边以 mac 为例,docker-machine 驱动是 virtualbox,我们强制修改某个 docker-machine 的 IP 地址

echo "ifconfig eth1 192.168.99.100 netmask 255.255.255.0 broadcast 192.168.99.255 up" | docker-machine ssh [your machine name] sudo tee /var/lib/boot2docker/bootsync.sh > /dev/null

上面脚本其实比较简单,就是配置一个网络地址在启动 docker-machine 的时候
然后需要重新生成一下证书(只需要第一次)

docker-machine regenerate-certs [your machine name]

这样就大功告成了

windows 处理的话,参考

https://stackoverflow.com/questions/34336218/is-there-a-way-to-force-docker-machine-to-create-vm-with-a-specific-ip