从Selenium Docker容器访问IIS Localhost

时间:2019-05-24 12:53:26

标签: c# .net selenium docker iis

我在本地主机的Windows机器上运行一个.net应用程序。我还使用以下命令设置了一个硒docker容器:

docker run -d -p 4444:4444 -v /dev/shm:/dev/shm selenium/standalone-chrome

我可以通过将远程Webdriver指向localhost:4444来访问容器

但是,当我运行测试并告诉网络驱动程序导航至“ http://docker.for.win.localhost:51749”时,屏幕截图中出现连接被拒绝的错误。

我看过类似的问题,但是它们使用的技术不同,并且这些解决方案对我不起作用,因此我认为我的问题可能会稍有不同,因为我的网站在Visual Studio中的IIS Express中运行。

我尝试通过SSH到容器并在相同地址上执行WGET操作,最终产生400错误,如下所示。

seluser@832dfa5515d6:/$ wget docker.for.win.localhost:51749
--2019-05-24 12:45:45--  http://docker.for.win.localhost:51749/
Resolving docker.for.win.localhost (docker.for.win.localhost)... 192.168.65.2
Connecting to docker.for.win.localhost (docker.for.win.localhost)|192.168.65.2|:51749... connected.
HTTP request sent, awaiting response... 400 Bad Request
2019-05-24 12:45:45 ERROR 400: Bad Request.

此问题可能是什么原因?

我正在将Docker Desktop与18.09.2引擎一起使用,该引擎正在Windows上运行(尽管我相信容器的内部是linux)

更新

我刚刚尝试过:

 curl -i -X GET -H "Host: localhost:51749" docker.for.win.localhost:51749

这最终将返回网站的HTML。所以看来容器实际上可以看到它……只是硒不能。

0 个答案:

没有答案