无法访问 selenium dockerized 图像中的 dockerized 应用 url

Can't access dockerized app url in selenium dockerized image

我已经在 VM 服务器上 localhost:8090 上对 vue.js 应用程序 运行 进行了 docker 化。我已经使用 SSH 将该 VM 服务器连接到我的 VS 代码,并且能够在端口转发后访问我本地机器的 chrome 浏览器上的 vue.js 应用程序。 但是在同一个 VM 中,还有另一个 selenium python dockerized 项目,它对 vue.js 应用程序进行自动测试,因此它需要访问 localhost:8090 URL。当 Vue.js 应用服务器启动时。不幸的是,python selenium 项目无法获取和请求 localhost:8090 URL。我在 selenium 测试中增加了睡眠时间,还添加了隐式或动态 (webdriverwaits),但仍然无法正常工作。

如果有人可以建议如何在没有端口转发的情况下在 VM vscode 中打开 localhost:8090,那将是 +1。

运行 Vue.js 和带有 docker 运行 --network=host

的 Selenium 容器

您有三个选择:

  • 您可以从测试容器访问 http://host.docker.internal:8090 上的 VueJS 应用程序。 从主机访问端口。您需要使用 host.docker.internal 作为 DNS 路由名称。
  • 您可以为 VueJS 容器指定容器名称。并使用 http://{VueJS Container Name}:80 您可以使用此参数 --name {Container-Name}
  • 在 运行 中添加容器名称
  • 您可以使用 Docker-Compose.