我有一个码头映像,其中包含一个maven selenium项目,它将在主机"dev-mock.abc.com“上进行测试。下面是我的docker命令,用于触发要执行的selenium测试。
docker run --rm --privileged \
--add-host="dev-mock.abc.com:123.45.67.89" \
${selenium-image}我所发现的是,在运行时,容器的/etc/host已经用以下条目进行了更新:"123.45.67.89 dev-mock.abc.com",但是在selenium执行过程中,它仍然无法解决这个"dev-mock.abc.com“名称。
是否有人知道selenium在执行/etc/host文件时是否获得了自定义条目?谢谢。
发布于 2018-09-29 08:52:32
也许您的容器中缺少了正确内容的/etc/nsswitch.conf,所以selenium“跳过”了/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,然后为selenium容器使用主机OS网络:
docker run --rm --privileged \
--net=host \
${selenium-image}https://stackoverflow.com/questions/52561419
复制相似问题