Firefox中的Docker容器可以从另一个中的selenium访问

时间:2014-05-11 19:10:27

标签: selenium selenium-webdriver watir watir-webdriver docker

我有一个运行rails应用程序的docker容器(我们称之为容器A)需要使用firefox作为后端使用watir webdriver进行一些抓取。

我在另一个容器(容器B)中安装了firefox,我希望能够传递容器A,如:

Selenium::WebDriver::Firefox::Binary.path= $DOCKER_RUN_CONTAINER_A

因此,每次watir启动firefox时,CONTAINER_A的新实例都会启动一个新的Firefox。

我知道容器使用端口进行通信很容易,但可执行文件怎么样? 而且,顺便说一下,将firefox隔离在一个单独的容器中看起来是一个好的设计理念吗?

1 个答案:

答案 0 :(得分:1)

是的,这很容易做到。只需在docker服务器的前台(在端口5555或其他任何地方)运行Selenium Grid的实例(默认情况下是一个网格节点混合组合)。然后你可以使用Ruby和Selenium绑定(而不是WatiR)来驱动远程盒子上的firefox浏览器。