每当我运行一个docker容器时,我都会看到它使用一个随机的MAC地址:
eth0 Link encap:Ethernet HWaddr de:6f:de:74:bd:d9
如何为容器设置特定的MAC地址?
我能否同时运行多个具有相同MAC地址的容器?这些容器不需要访问外部网络,也不需要彼此通信。
eth0 Link encap:Ethernet HWaddr de:6f:de:74:bd:d9
如何为容器设置特定的MAC地址?
我能否同时运行多个具有相同MAC地址的容器?这些容器不需要访问外部网络,也不需要彼此通信。
较新的docker
版本提供了--mac-address=12:34:56:78:9a:bc
参数来运行docker run
命令。
root@kevin-VirtualBox:~# sudo docker run --rm --mac-address"=12:34:de:b0:6b:61" ubuntu ifconfig | grep HWaddr
eth0 Link encap:Ethernet HWaddr 12:34:de:b0:6b:61
可以使用 LXC 配置选项 lxc.network.hwaddr
来设置 MAC 地址。
以下是使用 Docker 0.6.1 设置 MAC 地址的示例:
docker run --lxc-conf="lxc.network.hwaddr=92:20:de:b0:6b:61" my_image ifconfig
在输出中,您将看到设置的HWaddr:
eth0 Link encap:Ethernet HWaddr 92:20:de:b0:6b:61
更新:
以前的开关-lxc-conf
(一个破折号)已经被弃用。
要使用上面的选项,您的Docker必须使用LXC驱动程序:-e lxc