当前,我正在使用将静态ip分配给docker容器的下一种方法:我为每个此类容器创建ip别名并将其运行为:
docker run -p <alias>:<port>:<port>
而且,如果我要将容器迁移到其他主机,则:
这不是最优雅的解决方案,仅靠Docker客户端无法实现。每个此类端口都有docker-proxy进程。
我正在尝试使用ipvlan docker run --net=<net> --ip=<ip>
,它非常有效,直到需要从主机访问容器为止(例如,当docker daemon需要访问在容器中运行的注册表时)。我尝试使用的所有变通方法看起来都很丑陋且不可靠。是否可以允许访问docker daemon的ipvlan容器(但对所有内容都更好)-诸如为主机本身提供ipvlan地址或将禁用主机的自定义内核编译为ipvlan通信保护(我正在使用带有4.15.0内核的ubuntu 18.04) )?