PHPUnit Seleniumtesting在Docker本地主机上失败,并使用公共IP传递

我正在尝试使用Docker和Selenium Grid来设置自动testing平台。 在下面的图中,您可以看到我正在使用的结构。 最上面是在Compute Engine上运行的Ubuntu服务器。 左边是一个运行Ubuntu 14.04的docker容器。 容器使用Google App Engine在localhost:8080上运行我们的项目。 在右边是Selenium Hub,两个节点在4444端口上运行。

硒设置

从主机到docker以及selenium轮毂都有前进的动力。 分别在32772和32768。

在运行我的Seleniumtesting时,我将它们发送到集线器,集线器依次运行docker本地主机上的testing。 我的问题是,当我告诉集线器在172.17.0.2:8080上运行testing时,它会打开启动屏幕,但不能提交任何表单。 当我提交表格的文本区域被清除。 就像页面以某种方式刷新一样。 奇怪的是,当我告诉集线器使用主机的外部IP和docker的端口像这个xx.xx.xx.xx:32772,它的工作。 它具有所有的function。 但是出于性能和自动化的原因,我想在内部的IP地址上运行它。

任何帮助,将不胜感激。

Tijn

问题出在我的.env文件中。 会话域被设置为主机IP而不是内部IP地址。 通过改变它,网站的工作就像它应该。