我正在使用以下配置创建 macvlan:
sudo docker network create -d macvlan \
--subnet=192.168.4.0/24 \
--gateway=192.168.4.1 \
-o macvlan_mode=bridge \
-o parent=eth0 macvlan70
Run Code Online (Sandbox Code Playgroud)
然后我使用以下命令运行高山图像:
docker run --net=macvlan70 --hostname=thehost --ip=192.168.4.17 -it alpine /bin/sh
Run Code Online (Sandbox Code Playgroud)
此时我转移到 LAN 中的另一台机器 - 主机无法在没有网桥的情况下与 Macvlan 容器连接。
我可以ping 192.168.4.17成功。但ping thehost不会有结果。在路由器管理页面中,IP192.168.4.17被识别,但没有关联的主机名。
正如 docker文档中所述,用户定义的主机名无法从容器外部获得。
即使在主机网络模式下,容器默认也有自己的 UTS 命名空间。因此 --hostname 在主机网络模式下是允许的,并且只会更改容器内的主机名
| 归档时间: |
|
| 查看次数: |
1664 次 |
| 最近记录: |