我们正在尝试对几个内部应用程序进行一些behavetesting,但我们没有所需的资源在本地执行。 所以,我们正在尝试从AWS运行testing。 因为目前我们还没有VPN路由到我们的VPC,所以我不得不变得富有创造力。
我们的Selenium Grid设置(全部运行官方的Selenium Docker容器):
到目前为止,这是我得到的:
从本地Jenkins服务器到中心实例的反向隧道。
ssh -R 9990:localhost:22 ec2-user@remotehostip
从中心,我通过反向隧道build立代理。
ssh -D 1080 -f -C -N user@localhost -p 9990 -g
然后,使用以下环境variables启动节点容器:
-e SOCKS_SERVER=localhost:1080 -e SOCKS_VERSION=5
只要这些节点驻留在集线器上,就可以工作。 我无法弄清楚的是如何让不在集线器上的节点通过隧道连接。
我试过build立一个通往集线器的隧道
ssh -D 1080 -f -C -N ec2-user@hubip -g
并开始与节点
-e SOCKS_SERVER=localhost:1080 -e SOCKS_VERSION=5
但是,这是失败的悲惨。 我甚至没有从docker中的Chromenetworking连接。
我错过了什么?
编辑:我会更好使用实际的代理服务,如Tinyproxy? 如果是这样,我可以将Tinyproxy的交通路线通过反向隧道吗?