docker-selenium on customized /etc/hosts file ?



我有一个包含maven Selenium项目的docker镜像,它将在主机"dev-mock.abc.com"上进行测试。以下是我的 docker 命令来触发要执行的硒测试。

docker run --rm --privileged 
--add-host="dev-mock.abc.com:123.45.67.89" 
${selenium-image}

我发现,在运行时,该容器的/etc/hosts已更新为以下条目:"123.45.67.89 dev-mock.abc.com",但在硒执行期间,它仍然无法解决这个"dev-mock.abc.com"名称。

有谁知道 selenium 在执行时是否在/etc/hosts 文件中获取自定义条目?谢谢。

也许容器中缺少具有正确内容的/etc/nsswitch.conf,因此硒"跳过"/etc/hosts并尝试使用 DNS。尝试:

echo "hosts: files dns" > /tmp/nsswitch.conf
docker run --rm --privileged 
--volume /tmp/nsswitch.conf:/etc/nsswitch.conf 
--add-host="dev-mock.abc.com:123.45.67.89" 
${selenium-image}

另一种选择是在主机操作系统上编辑/etc/hosts,然后将主机操作系统网络用于硒容器:

docker run --rm --privileged 
--net=host 
${selenium-image}

相关内容

  • 没有找到相关文章

最新更新