New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Firefox node issue, browser hangs #31

Closed
alvassin opened this Issue Dec 30, 2014 · 26 comments

Comments

Projects
@alvassin

alvassin commented Dec 30, 2014

Hello,

my firefox nodes (i am running docker on ubuntu server) seem to hang (100% reproduces), as using custom docker builds as using official via docker pull (chrome nodes work well).

I tried to execute firefox in the container, seems to be no display configured:

#docker run c6970094431e /usr/bin/firefox

(process:1): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
Error: cannot open display: :99.0

If i execute docker logs $CID i see the following:

18:47:35.677 INFO - Executing: [new session: Capabilities [{platform=ANY, javascriptEnabled=true, browserName=firefox, version=}]])
18:47:35.678 INFO - Creating a new session for Capabilities [{platform=ANY, javascriptEnabled=true, browserName=firefox, version=}]
18:48:20.901 WARN - Exception thrown
java.util.concurrent.ExecutionException: org.openqa.selenium.WebDriverException: java.lang.reflect.InvocationTargetException
Build info: version: '2.44.0', revision: '76d78cf', time: '2014-10-23 20:02:37'
System info: host: 'c9657e29a60a', ip: '172.17.0.34', os.name: 'Linux', os.arch: 'amd64', os.version: '3.13.0-32-generic', java.version: '1.7.0_65'
Driver info: driver.version: unknown
        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.util.concurrent.FutureTask.get(FutureTask.java:188)
        at org.openqa.selenium.remote.server.DefaultSession.execute(DefaultSession.java:175)
        at org.openqa.selenium.remote.server.DefaultSession.<init>(DefaultSession.java:111)
        at org.openqa.selenium.remote.server.DefaultSession.createSession(DefaultSession.java:88)
        at org.openqa.selenium.remote.server.DefaultDriverSessions.newSession(DefaultDriverSessions.java:108)
        at org.openqa.selenium.remote.server.handler.NewSession.handle(NewSession.java:57)
        at org.openqa.selenium.remote.server.handler.NewSession.handle(NewSession.java:1)
        at org.openqa.selenium.remote.server.rest.ResultConfig.handle(ResultConfig.java:112)
        at org.openqa.selenium.remote.server.JsonHttpCommandHandler.handleRequest(JsonHttpCommandHandler.java:172)
        at org.openqa.selenium.remote.server.DriverServlet.handleRequest(DriverServlet.java:201)
        at org.openqa.selenium.remote.server.DriverServlet.doPost(DriverServlet.java:163)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
        at org.openqa.selenium.remote.server.DriverServlet.service(DriverServlet.java:129)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at org.openqa.jetty.jetty.servlet.ServletHolder.handle(ServletHolder.java:428)
        at org.openqa.jetty.jetty.servlet.ServletHandler.dispatch(ServletHandler.java:680)
        at org.openqa.jetty.jetty.servlet.ServletHandler.handle(ServletHandler.java:571)
        at org.openqa.jetty.http.HttpContext.handle(HttpContext.java:1526)
        at org.openqa.jetty.http.HttpContext.handle(HttpContext.java:1479)
        at org.openqa.jetty.http.HttpServer.service(HttpServer.java:920)
        at org.openqa.jetty.http.HttpConnection.service(HttpConnection.java:820)
        at org.openqa.jetty.http.HttpConnection.handleNext(HttpConnection.java:986)
        at org.openqa.jetty.http.HttpConnection.handle(HttpConnection.java:837)
        at org.openqa.jetty.http.SocketListener.handleConnection(SocketListener.java:243)
        at org.openqa.jetty.util.ThreadedServer.handle(ThreadedServer.java:358)
        at org.openqa.jetty.util.ThreadPool$PoolThread.run(ThreadPool.java:537)
Caused by: org.openqa.selenium.WebDriverException: java.lang.reflect.InvocationTargetException
Build info: version: '2.44.0', revision: '76d78cf', time: '2014-10-23 20:02:37'
System info: host: 'c9657e29a60a', ip: '172.17.0.34', os.name: 'Linux', os.arch: 'amd64', os.version: '3.13.0-32-generic', java.version: '1.7.0_65'
Driver info: driver.version: unknown
        at org.openqa.selenium.remote.server.DefaultDriverProvider.callConstructor(DefaultDriverProvider.java:69)
        at org.openqa.selenium.remote.server.DefaultDriverProvider.newInstance(DefaultDriverProvider.java:53)
        at org.openqa.selenium.remote.server.DefaultDriverFactory.newInstance(DefaultDriverFactory.java:54)
        at org.openqa.selenium.remote.server.DefaultSession$BrowserCreator.call(DefaultSession.java:214)
        at org.openqa.selenium.remote.server.DefaultSession$BrowserCreator.call(DefaultSession.java:1)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at org.openqa.selenium.remote.server.DefaultSession$1.run(DefaultSession.java:168)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at org.openqa.selenium.remote.server.DefaultDriverProvider.callConstructor(DefaultDriverProvider.java:59)
        ... 9 more
Caused by: org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary(/usr/bin/firefox) on port 7055; process output follows:

(process:734): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
Xlib:  extension "RANDR" missing on display ":99".
process 734: D-Bus library appears to be incorrectly set up; failed to read machine uuid: Failed to open "/etc/machine-id": No such file or directory
See the manual page for dbus-uuidgen to correct this issue.

Build info: version: '2.44.0', revision: '76d78cf', time: '2014-10-23 20:02:37'
System info: host: 'c9657e29a60a', ip: '172.17.0.34', os.name: 'Linux', os.arch: 'amd64', os.version: '3.13.0-32-generic', java.version: '1.7.0_65'
Driver info: driver.version: FirefoxDriver
        at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:134)
        at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:246)
        at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:114)
        at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:193)
        at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:186)
        at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:104)
        ... 14 more
Caused by: org.openqa.selenium.WebDriverException: java.lang.InterruptedException: Process timed out after waiting for 45000 ms.
Build info: version: '2.44.0', revision: '76d78cf', time: '2014-10-23 20:02:37'
System info: host: 'c9657e29a60a', ip: '172.17.0.34', os.name: 'Linux', os.arch: 'amd64', os.version: '3.13.0-32-generic', java.version: '1.7.0_65'
Driver info: driver.version: FirefoxDriver
        at org.openqa.selenium.os.CommandLine.waitFor(CommandLine.java:131)
        at org.openqa.selenium.firefox.FirefoxBinary.waitFor(FirefoxBinary.java:222)
        at org.openqa.selenium.firefox.FirefoxBinary.clean(FirefoxBinary.java:242)
        at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:91)
        ... 19 more
Caused by: java.lang.InterruptedException: Process timed out after waiting for 45000 ms.
        at org.openqa.selenium.os.UnixProcess.waitFor(UnixProcess.java:148)
        at org.openqa.selenium.os.CommandLine.waitFor(CommandLine.java:129)
        ... 22 more
18:48:20.904 WARN - Exception: Process timed out after waiting for 45000 ms.
@mtscout6

This comment has been minimized.

Show comment
Hide comment
@mtscout6

mtscout6 Dec 30, 2014

Member

If you are running docker run c6970094431e /usr/bin/firefox where that hash is the image id of selenium/node-firefox then I'm not surprised. Docker containers are inherently headless so there's no X11 support to display any gui application. This is why we wrap the selenium process with xvfb-run. See: https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeBase/entry_point.sh#L21-L25.

Since you are trying to explicitly launch firefox without xvfb running, there would be no display device for it to work.

Member

mtscout6 commented Dec 30, 2014

If you are running docker run c6970094431e /usr/bin/firefox where that hash is the image id of selenium/node-firefox then I'm not surprised. Docker containers are inherently headless so there's no X11 support to display any gui application. This is why we wrap the selenium process with xvfb-run. See: https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeBase/entry_point.sh#L21-L25.

Since you are trying to explicitly launch firefox without xvfb running, there would be no display device for it to work.

@alvassin

This comment has been minimized.

Show comment
Hide comment
@alvassin

alvassin Dec 30, 2014

@mtscout6 thanks a lot for your response!
i tried to run docker run -d --link selenium-hub:hub selenium/node-firefox:2.44.0 but i have same problem...

alvassin commented Dec 30, 2014

@mtscout6 thanks a lot for your response!
i tried to run docker run -d --link selenium-hub:hub selenium/node-firefox:2.44.0 but i have same problem...

@mtscout6

This comment has been minimized.

Show comment
Hide comment
@mtscout6

mtscout6 Dec 30, 2014

Member

For a sanity check, can you run the test.sh script from this repo and tell me if you are still getting the issue? You will need to clone the repo to do so.

Also, have you tried removing the selenium/node-firefox image and re-pulling it from docker hub?

Member

mtscout6 commented Dec 30, 2014

For a sanity check, can you run the test.sh script from this repo and tell me if you are still getting the issue? You will need to clone the repo to do so.

Also, have you tried removing the selenium/node-firefox image and re-pulling it from docker hub?

@mgingras

This comment has been minimized.

Show comment
Hide comment
@mgingras

mgingras Feb 4, 2015

Contributor

Hey @mtscout6, I am seeing this issue as well. I have tried removing the selenium/node-firefox and the selenium/hub images and re-pulling them.

I have also run the test.sh script and got the following:

Building test container image
Sending build context to Docker daemon 8.704 kB
Sending build context to Docker daemon
Step 0 : FROM node:0.10-onbuild
# Executing 3 build triggers
Step onbuild-0 : COPY package.json /usr/src/app/
 ---> Using cache
 ---> 2dcab1257e1b
Step onbuild-1 : RUN npm install
 ---> Using cache
 ---> f17c27aaaab9
Step onbuild-2 : COPY . /usr/src/app
 ---> Using cache
 ---> 8c8c35bf7bec
 ---> 8c8c35bf7bec
Step 1 : MAINTAINER Selenium <selenium-developers@googlegroups.com>
 ---> Using cache
 ---> 16ad05d0d985
Step 2 : ENV TEST_CMD node smoke-chrome.js && node smoke-firefox.js
 ---> Using cache
 ---> 12ef8b3bf9a4
Successfully built 12ef8b3bf9a4
Starting Selenium Container
starting selenium hub with configuration:

{
  "host": null,
  "port": 4444,
  "prioritizer": null,
  "capabilityMatcher": "org.openqa.grid.internal.utils.DefaultCapabilityMatcher",
  "throwOnCapabilityNotPresent": true,
  "newSessionWaitTimeout": -1,
  "jettyMaxThreads": -1,
  "nodePolling": 5000,
  "cleanUpCycle": 5000,
  "timeout": 30000,
  "browserTimeout": 0,
  "maxSession": 5,
  "unregisterIfStillDownAfter": 30000
}
18:55:58.765 INFO - Launching a selenium grid server
2015-02-04 18:55:59.755:INFO:osjs.Server:jetty-7.x.y-SNAPSHOT
2015-02-04 18:55:59.810:INFO:osjsh.ContextHandler:started o.s.j.s.ServletContextHandler{/,null}
2015-02-04 18:55:59.823:INFO:osjs.AbstractConnector:Started SocketConnector@0.0.0.0:4444
18:56:01.135 INFO - Launching a selenium grid node
18:56:01.324 INFO - Launching a selenium grid node
18:56:02.328 INFO - Java: Oracle Corporation 24.65-b04
18:56:02.329 INFO - OS: Linux 3.13.0-24-generic amd64
18:56:02.338 INFO - v2.44.0, with Core v2.44.0. Built from revision 76d78cf
18:56:02.375 INFO - Java: Oracle Corporation 24.65-b04
18:56:02.376 INFO - OS: Linux 3.13.0-24-generic amd64
18:56:02.384 INFO - v2.44.0, with Core v2.44.0. Built from revision 76d78cf
18:56:02.437 INFO - Default driver org.openqa.selenium.ie.InternetExplorerDriver registration is skipped: registration capabilities Capabilities [{platform=WINDOWS, ensureCleanSession=true, browserName=internet explorer, version=}] does not match with current platform: LINUX
18:56:02.445 INFO - Default driver org.openqa.selenium.ie.InternetExplorerDriver registration is skipped: registration capabilities Capabilities [{platform=WINDOWS, ensureCleanSession=true, browserName=internet explorer, version=}] does not match with current platform: LINUX
18:56:02.501 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:5555/wd/hub
18:56:02.502 INFO - Version Jetty/5.1.x
18:56:02.504 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
18:56:02.505 INFO - Started HttpContext[/selenium-server,/selenium-server]
18:56:02.506 INFO - Started HttpContext[/,/]
18:56:02.509 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@5dd4a708
18:56:02.509 INFO - Started HttpContext[/wd,/wd]
18:56:02.518 INFO - Started SocketListener on 0.0.0.0:5555
18:56:02.518 INFO - Started org.openqa.jetty.jetty.Server@4c011fe
18:56:02.548 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:5555/wd/hub
18:56:02.550 INFO - Version Jetty/5.1.x
18:56:02.552 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
18:56:02.553 INFO - Started HttpContext[/selenium-server,/selenium-server]
18:56:02.554 INFO - Started HttpContext[/,/]
18:56:02.558 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@23ea181b
18:56:02.558 INFO - Started HttpContext[/wd,/wd]
18:56:02.563 INFO - using the json request : {"class":"org.openqa.grid.common.RegistrationRequest","configuration":{"nodeConfig":"/opt/selenium/config.json","register":true,"port":5555,"host":"172.17.2.25","proxy":"org.openqa.grid.selenium.proxy.DefaultRemoteProxy","maxSession":1,"role":"node","hubHost":"172.17.2.24","registerCycle":5000,"hub":"http://172.17.2.24:4444/grid/register","hubPort":4444,"url":"http://172.17.2.25:5555","remoteHost":"http://172.17.2.25:5555"},"capabilities":[{"platform":"LINUX","seleniumProtocol":"Selenium","browserName":"*googlechrome","maxInstances":1},{"platform":"LINUX","seleniumProtocol":"WebDriver","browserName":"chrome","maxInstances":1}]}
18:56:02.565 INFO - Started SocketListener on 0.0.0.0:5555
18:56:02.565 INFO - Started org.openqa.jetty.jetty.Server@4c011fe
18:56:02.566 INFO - Starting auto register thread. Will try to register every 5000 ms.
18:56:02.566 INFO - Registering the node to hub :http://172.17.2.24:4444/grid/register
18:56:02.626 INFO - using the json request : {"class":"org.openqa.grid.common.RegistrationRequest","configuration":{"nodeConfig":"/opt/selenium/config.json","register":true,"port":5555,"host":"172.17.2.26","proxy":"org.openqa.grid.selenium.proxy.DefaultRemoteProxy","maxSession":1,"role":"node","hubHost":"172.17.2.24","registerCycle":5000,"hub":"http://172.17.2.24:4444/grid/register","hubPort":4444,"url":"http://172.17.2.26:5555","remoteHost":"http://172.17.2.26:5555"},"capabilities":[{"platform":"LINUX","seleniumProtocol":"Selenium","browserName":"*firefox","maxInstances":1},{"platform":"LINUX","seleniumProtocol":"WebDriver","browserName":"firefox","maxInstances":1}]}
18:56:02.627 INFO - Starting auto register thread. Will try to register every 5000 ms.
18:56:02.627 INFO - Registering the node to hub :http://172.17.2.24:4444/grid/register
Running test container...

> docker-selenium-tests@0.0.0 start /usr/src/app
> $TEST_CMD

[chrome]  > CALL init({"browserName":"chrome"})
[chrome]  > POST /session {"desiredCapabilities":{"browserName":"chrome","version":"","javascriptEnabled":true,"platform":"ANY"}}
18:56:04.241 INFO - Got a request to create a new session: Capabilities [{platform=ANY, javascriptEnabled=true, browserName=chrome, version=}]
       18:56:04.244 INFO - Available nodes: [host :http://172.17.2.25:5555, host :http://172.17.2.26:5555]
                                                                                                          18:56:04.244 INFO - Trying to create a new session on node host :http://172.17.2.25:5555
                                                           18:56:04.245 INFO - Trying to create a new session on test slot {platform=LINUX, seleniumProtocol=WebDriver, browserName=chrome, maxInstances=1}
                                                                    18:56:04.577 INFO - Executing: [new session: Capabilities [{platform=ANY, javascriptEnabled=true, browserName=chrome, version=}]])
                                                               18:56:04.594 INFO - Creating a new session for Capabilities [{platform=ANY, javascriptEnabled=true, browserName=chrome, version=}]
                                                          Starting ChromeDriver 2.14.313457 (3d645c400edf2e2c500566c9aa096063e707c9cf) on port 3455
            Only local connections are allowed.
                                               [0.518][WARNING]: PAC support disabled because there is no system implementation
                                                                                                                               [0.519][SEVERE]: Failed to create /.pki/nssdb directory.
                                                18:56:05.729 INFO - Done: [new session: Capabilities [{platform=ANY, javascriptEnabled=true, browserName=chrome, version=}]]
                                     [chrome]
Driving the web on session: df657939-ed46-478d-a5db-91b709afc1c2

[chrome]  > RESPONSE init({"browserName":"chrome"}) "df657939-ed46-478d-a5db-91b709afc1c2",{"platform":"LINUX","acceptSslCerts":true,"javascriptEnabled":true,"browserName":"chrome","chrome":{"userDataDir":"/tmp/.com.google.Chrome.K2RfGd"},"rotatable":false,"locationContextEnabled":true,"mobileEmulationEnabled":false,"webdriver.remote.sessionid":"df657939-ed46-478d-a5db-91b709afc1c2","version":"40.0.2214.93","takesHeapSnapshot":true,"cssSelectorsEnabled":true,"databaseEnabled":false,"handlesAlerts":true,"browserConnectionEnabled":false,"nativeEvents":true,"webStorageEnabled":true,"applicationCacheEnabled":false,"takesScreenshot":true}
[chrome]  > CALL get("https://github.com")
[chrome]  > POST /session/:sessionID/url {"url":"https://github.com"}
18:56:05.867 INFO - Executing: [get: https://github.com])
                                                         18:56:09.520 INFO - Done: [get: https://github.com]
                                                                                                            [chrome]  > RESPONSE get("https://github.com")
[chrome]  > CALL title()
[chrome]  > GET /session/:sessionID/title
18:56:09.535 INFO - Executing: [get title])
                                           18:56:09.566 INFO - Done: [get title]
                                                                                [chrome]  > RESPONSE title() "GitHub · Build software better, together."
[chrome]  > CALL quit()
[chrome]  > DELETE /session/:sessionID
18:56:09.582 INFO - Executing: [delete session: df657939-ed46-478d-a5db-91b709afc1c2])
                                                                                      18:56:10.148 INFO - Done: [delete session: df657939-ed46-478d-a5db-91b709afc1c2]
                               [chrome]
Ending your web drivage..

[chrome]  > RESPONSE quit()
Tearing down Selenium Chrome Node container
b1847c870734d47131f2cafd0411bc9858aeb108834c16f002c1d8243d90b598
b1847c870734d47131f2cafd0411bc9858aeb108834c16f002c1d8243d90b598
Tearing down Selenium Firefox Node container
3123d216386593d3967232cfcb1cc6af8979099414fbdbc5c2f58852de1d86ce
3123d216386593d3967232cfcb1cc6af8979099414fbdbc5c2f58852de1d86ce
Tearing down Selenium Hub container
shutting down hub..
shutdown complete
bf10f9a83bdf508d4870baa15d04f20712b9fc2de7cf7f217e51e784443e5a49
bf10f9a83bdf508d4870baa15d04f20712b9fc2de7cf7f217e51e784443e5a49
Done

I have tried against the standalone-firefox image and got the same errors. Any debug steps/ideas would be appreciated.

Contributor

mgingras commented Feb 4, 2015

Hey @mtscout6, I am seeing this issue as well. I have tried removing the selenium/node-firefox and the selenium/hub images and re-pulling them.

I have also run the test.sh script and got the following:

Building test container image
Sending build context to Docker daemon 8.704 kB
Sending build context to Docker daemon
Step 0 : FROM node:0.10-onbuild
# Executing 3 build triggers
Step onbuild-0 : COPY package.json /usr/src/app/
 ---> Using cache
 ---> 2dcab1257e1b
Step onbuild-1 : RUN npm install
 ---> Using cache
 ---> f17c27aaaab9
Step onbuild-2 : COPY . /usr/src/app
 ---> Using cache
 ---> 8c8c35bf7bec
 ---> 8c8c35bf7bec
Step 1 : MAINTAINER Selenium <selenium-developers@googlegroups.com>
 ---> Using cache
 ---> 16ad05d0d985
Step 2 : ENV TEST_CMD node smoke-chrome.js && node smoke-firefox.js
 ---> Using cache
 ---> 12ef8b3bf9a4
Successfully built 12ef8b3bf9a4
Starting Selenium Container
starting selenium hub with configuration:

{
  "host": null,
  "port": 4444,
  "prioritizer": null,
  "capabilityMatcher": "org.openqa.grid.internal.utils.DefaultCapabilityMatcher",
  "throwOnCapabilityNotPresent": true,
  "newSessionWaitTimeout": -1,
  "jettyMaxThreads": -1,
  "nodePolling": 5000,
  "cleanUpCycle": 5000,
  "timeout": 30000,
  "browserTimeout": 0,
  "maxSession": 5,
  "unregisterIfStillDownAfter": 30000
}
18:55:58.765 INFO - Launching a selenium grid server
2015-02-04 18:55:59.755:INFO:osjs.Server:jetty-7.x.y-SNAPSHOT
2015-02-04 18:55:59.810:INFO:osjsh.ContextHandler:started o.s.j.s.ServletContextHandler{/,null}
2015-02-04 18:55:59.823:INFO:osjs.AbstractConnector:Started SocketConnector@0.0.0.0:4444
18:56:01.135 INFO - Launching a selenium grid node
18:56:01.324 INFO - Launching a selenium grid node
18:56:02.328 INFO - Java: Oracle Corporation 24.65-b04
18:56:02.329 INFO - OS: Linux 3.13.0-24-generic amd64
18:56:02.338 INFO - v2.44.0, with Core v2.44.0. Built from revision 76d78cf
18:56:02.375 INFO - Java: Oracle Corporation 24.65-b04
18:56:02.376 INFO - OS: Linux 3.13.0-24-generic amd64
18:56:02.384 INFO - v2.44.0, with Core v2.44.0. Built from revision 76d78cf
18:56:02.437 INFO - Default driver org.openqa.selenium.ie.InternetExplorerDriver registration is skipped: registration capabilities Capabilities [{platform=WINDOWS, ensureCleanSession=true, browserName=internet explorer, version=}] does not match with current platform: LINUX
18:56:02.445 INFO - Default driver org.openqa.selenium.ie.InternetExplorerDriver registration is skipped: registration capabilities Capabilities [{platform=WINDOWS, ensureCleanSession=true, browserName=internet explorer, version=}] does not match with current platform: LINUX
18:56:02.501 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:5555/wd/hub
18:56:02.502 INFO - Version Jetty/5.1.x
18:56:02.504 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
18:56:02.505 INFO - Started HttpContext[/selenium-server,/selenium-server]
18:56:02.506 INFO - Started HttpContext[/,/]
18:56:02.509 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@5dd4a708
18:56:02.509 INFO - Started HttpContext[/wd,/wd]
18:56:02.518 INFO - Started SocketListener on 0.0.0.0:5555
18:56:02.518 INFO - Started org.openqa.jetty.jetty.Server@4c011fe
18:56:02.548 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:5555/wd/hub
18:56:02.550 INFO - Version Jetty/5.1.x
18:56:02.552 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
18:56:02.553 INFO - Started HttpContext[/selenium-server,/selenium-server]
18:56:02.554 INFO - Started HttpContext[/,/]
18:56:02.558 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@23ea181b
18:56:02.558 INFO - Started HttpContext[/wd,/wd]
18:56:02.563 INFO - using the json request : {"class":"org.openqa.grid.common.RegistrationRequest","configuration":{"nodeConfig":"/opt/selenium/config.json","register":true,"port":5555,"host":"172.17.2.25","proxy":"org.openqa.grid.selenium.proxy.DefaultRemoteProxy","maxSession":1,"role":"node","hubHost":"172.17.2.24","registerCycle":5000,"hub":"http://172.17.2.24:4444/grid/register","hubPort":4444,"url":"http://172.17.2.25:5555","remoteHost":"http://172.17.2.25:5555"},"capabilities":[{"platform":"LINUX","seleniumProtocol":"Selenium","browserName":"*googlechrome","maxInstances":1},{"platform":"LINUX","seleniumProtocol":"WebDriver","browserName":"chrome","maxInstances":1}]}
18:56:02.565 INFO - Started SocketListener on 0.0.0.0:5555
18:56:02.565 INFO - Started org.openqa.jetty.jetty.Server@4c011fe
18:56:02.566 INFO - Starting auto register thread. Will try to register every 5000 ms.
18:56:02.566 INFO - Registering the node to hub :http://172.17.2.24:4444/grid/register
18:56:02.626 INFO - using the json request : {"class":"org.openqa.grid.common.RegistrationRequest","configuration":{"nodeConfig":"/opt/selenium/config.json","register":true,"port":5555,"host":"172.17.2.26","proxy":"org.openqa.grid.selenium.proxy.DefaultRemoteProxy","maxSession":1,"role":"node","hubHost":"172.17.2.24","registerCycle":5000,"hub":"http://172.17.2.24:4444/grid/register","hubPort":4444,"url":"http://172.17.2.26:5555","remoteHost":"http://172.17.2.26:5555"},"capabilities":[{"platform":"LINUX","seleniumProtocol":"Selenium","browserName":"*firefox","maxInstances":1},{"platform":"LINUX","seleniumProtocol":"WebDriver","browserName":"firefox","maxInstances":1}]}
18:56:02.627 INFO - Starting auto register thread. Will try to register every 5000 ms.
18:56:02.627 INFO - Registering the node to hub :http://172.17.2.24:4444/grid/register
Running test container...

> docker-selenium-tests@0.0.0 start /usr/src/app
> $TEST_CMD

[chrome]  > CALL init({"browserName":"chrome"})
[chrome]  > POST /session {"desiredCapabilities":{"browserName":"chrome","version":"","javascriptEnabled":true,"platform":"ANY"}}
18:56:04.241 INFO - Got a request to create a new session: Capabilities [{platform=ANY, javascriptEnabled=true, browserName=chrome, version=}]
       18:56:04.244 INFO - Available nodes: [host :http://172.17.2.25:5555, host :http://172.17.2.26:5555]
                                                                                                          18:56:04.244 INFO - Trying to create a new session on node host :http://172.17.2.25:5555
                                                           18:56:04.245 INFO - Trying to create a new session on test slot {platform=LINUX, seleniumProtocol=WebDriver, browserName=chrome, maxInstances=1}
                                                                    18:56:04.577 INFO - Executing: [new session: Capabilities [{platform=ANY, javascriptEnabled=true, browserName=chrome, version=}]])
                                                               18:56:04.594 INFO - Creating a new session for Capabilities [{platform=ANY, javascriptEnabled=true, browserName=chrome, version=}]
                                                          Starting ChromeDriver 2.14.313457 (3d645c400edf2e2c500566c9aa096063e707c9cf) on port 3455
            Only local connections are allowed.
                                               [0.518][WARNING]: PAC support disabled because there is no system implementation
                                                                                                                               [0.519][SEVERE]: Failed to create /.pki/nssdb directory.
                                                18:56:05.729 INFO - Done: [new session: Capabilities [{platform=ANY, javascriptEnabled=true, browserName=chrome, version=}]]
                                     [chrome]
Driving the web on session: df657939-ed46-478d-a5db-91b709afc1c2

[chrome]  > RESPONSE init({"browserName":"chrome"}) "df657939-ed46-478d-a5db-91b709afc1c2",{"platform":"LINUX","acceptSslCerts":true,"javascriptEnabled":true,"browserName":"chrome","chrome":{"userDataDir":"/tmp/.com.google.Chrome.K2RfGd"},"rotatable":false,"locationContextEnabled":true,"mobileEmulationEnabled":false,"webdriver.remote.sessionid":"df657939-ed46-478d-a5db-91b709afc1c2","version":"40.0.2214.93","takesHeapSnapshot":true,"cssSelectorsEnabled":true,"databaseEnabled":false,"handlesAlerts":true,"browserConnectionEnabled":false,"nativeEvents":true,"webStorageEnabled":true,"applicationCacheEnabled":false,"takesScreenshot":true}
[chrome]  > CALL get("https://github.com")
[chrome]  > POST /session/:sessionID/url {"url":"https://github.com"}
18:56:05.867 INFO - Executing: [get: https://github.com])
                                                         18:56:09.520 INFO - Done: [get: https://github.com]
                                                                                                            [chrome]  > RESPONSE get("https://github.com")
[chrome]  > CALL title()
[chrome]  > GET /session/:sessionID/title
18:56:09.535 INFO - Executing: [get title])
                                           18:56:09.566 INFO - Done: [get title]
                                                                                [chrome]  > RESPONSE title() "GitHub · Build software better, together."
[chrome]  > CALL quit()
[chrome]  > DELETE /session/:sessionID
18:56:09.582 INFO - Executing: [delete session: df657939-ed46-478d-a5db-91b709afc1c2])
                                                                                      18:56:10.148 INFO - Done: [delete session: df657939-ed46-478d-a5db-91b709afc1c2]
                               [chrome]
Ending your web drivage..

[chrome]  > RESPONSE quit()
Tearing down Selenium Chrome Node container
b1847c870734d47131f2cafd0411bc9858aeb108834c16f002c1d8243d90b598
b1847c870734d47131f2cafd0411bc9858aeb108834c16f002c1d8243d90b598
Tearing down Selenium Firefox Node container
3123d216386593d3967232cfcb1cc6af8979099414fbdbc5c2f58852de1d86ce
3123d216386593d3967232cfcb1cc6af8979099414fbdbc5c2f58852de1d86ce
Tearing down Selenium Hub container
shutting down hub..
shutdown complete
bf10f9a83bdf508d4870baa15d04f20712b9fc2de7cf7f217e51e784443e5a49
bf10f9a83bdf508d4870baa15d04f20712b9fc2de7cf7f217e51e784443e5a49
Done

I have tried against the standalone-firefox image and got the same errors. Any debug steps/ideas would be appreciated.

@mgingras

This comment has been minimized.

Show comment
Hide comment
@mgingras

mgingras Feb 4, 2015

Contributor
Contributor

mgingras commented Feb 4, 2015

@mtscout6

This comment has been minimized.

Show comment
Hide comment
@mtscout6

mtscout6 Feb 4, 2015

Member

I was thinking the same thing, but I have pulled the images fresh from hub.docker.com today and they are working. They were last built before the latest release of firefox. Have you built them yourself locally?

Member

mtscout6 commented Feb 4, 2015

I was thinking the same thing, but I have pulled the images fresh from hub.docker.com today and they are working. They were last built before the latest release of firefox. Have you built them yourself locally?

@mgingras

This comment has been minimized.

Show comment
Hide comment
@mgingras

mgingras Feb 4, 2015

Contributor

Hmm, odd. I pulled them down today and get Mozilla Firefox 35.0.1 if I run firefox -v against any of the images. I have tried building them locally and am playing with curling down a lower version of Firefox.

Contributor

mgingras commented Feb 4, 2015

Hmm, odd. I pulled them down today and get Mozilla Firefox 35.0.1 if I run firefox -v against any of the images. I have tried building them locally and am playing with curling down a lower version of Firefox.

@mgingras

This comment has been minimized.

Show comment
Hide comment
@mgingras

mgingras Feb 5, 2015

Contributor

So I am still seeing the error running against firefox 33 👎

Contributor

mgingras commented Feb 5, 2015

So I am still seeing the error running against firefox 33 👎

@bmannix

This comment has been minimized.

Show comment
Hide comment
@bmannix

bmannix Mar 25, 2015

I only see this issue on my Ubuntu host. If I use boot2docker, I can run the exact same containers without any issues.

bmannix commented Mar 25, 2015

I only see this issue on my Ubuntu host. If I use boot2docker, I can run the exact same containers without any issues.

@dpauli

This comment has been minimized.

Show comment
Hide comment
@dpauli

dpauli Mar 25, 2015

We inspect this error over two days and wondered about

Error: cannot open display: :99.0

This error does happen because there is no display in the node-firefox environment.
How to fix it:

  • After docker start and before setting environment as node create a virtual monitor:

Xvfb :1 -screen 0 1024x768x16 &
export DISPLAY=:1

Its important to enter a & after the screen creation to set the Xvfb process in background and don't close it in next command.

dpauli commented Mar 25, 2015

We inspect this error over two days and wondered about

Error: cannot open display: :99.0

This error does happen because there is no display in the node-firefox environment.
How to fix it:

  • After docker start and before setting environment as node create a virtual monitor:

Xvfb :1 -screen 0 1024x768x16 &
export DISPLAY=:1

Its important to enter a & after the screen creation to set the Xvfb process in background and don't close it in next command.

@mtscout6

This comment has been minimized.

Show comment
Hide comment
@mtscout6

mtscout6 Mar 25, 2015

Member

The thing that's confusing is that's exactly what this line is for: https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeBase/entry_point.sh#L21

Member

mtscout6 commented Mar 25, 2015

The thing that's confusing is that's exactly what this line is for: https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeBase/entry_point.sh#L21

@dpauli

This comment has been minimized.

Show comment
Hide comment
@dpauli

dpauli Mar 25, 2015

The script was perfectly works in Windows / Mac (boot2Docker), but not in Linux. Perhaps some linux machine delete the virtual monitor after creating it.
But its fact, that there is no virtual monitor existing using this Dockerfile and scripts with linux hosts.

dpauli commented Mar 25, 2015

The script was perfectly works in Windows / Mac (boot2Docker), but not in Linux. Perhaps some linux machine delete the virtual monitor after creating it.
But its fact, that there is no virtual monitor existing using this Dockerfile and scripts with linux hosts.

@mtscout6

This comment has been minimized.

Show comment
Hide comment
@mtscout6

mtscout6 Mar 25, 2015

Member

Have you tried setting ENV DISPLAY :99.0 to :1 which is the same number display you mentioned above?

Member

mtscout6 commented Mar 25, 2015

Have you tried setting ENV DISPLAY :99.0 to :1 which is the same number display you mentioned above?

@bmannix

This comment has been minimized.

Show comment
Hide comment
@bmannix

bmannix Mar 25, 2015

@dpauli - let's be specific. boo2docker is based on tiny core linux (thanks @wadedude), so it's not a linux issue, per se. I suspect that it's only an issue on Ubuntu, which would be disappointing. I'll test on a Centos based system today and report back.

bmannix commented Mar 25, 2015

@dpauli - let's be specific. boo2docker is based on tiny core linux (thanks @wadedude), so it's not a linux issue, per se. I suspect that it's only an issue on Ubuntu, which would be disappointing. I'll test on a Centos based system today and report back.

@dpauli

This comment has been minimized.

Show comment
Hide comment
@dpauli

dpauli Mar 25, 2015

We changed display with

export DISPLAY=:1

without creating this display before.

Then the error is

Error: cannot open display: :1.0

dpauli commented Mar 25, 2015

We changed display with

export DISPLAY=:1

without creating this display before.

Then the error is

Error: cannot open display: :1.0

@jmewes

This comment has been minimized.

Show comment
Hide comment
@jmewes

jmewes Mar 25, 2015

We could reproduce it with Ubuntu and CentOS as well.

jmewes commented Mar 25, 2015

We could reproduce it with Ubuntu and CentOS as well.

@mtscout6

This comment has been minimized.

Show comment
Hide comment
@mtscout6

mtscout6 Mar 25, 2015

Member

I don't have a linux machine to test with at the moment. So if you guys create a pull request with a fix I will test that it isn't broken on Mac and we'll go from there.

Member

mtscout6 commented Mar 25, 2015

I don't have a linux machine to test with at the moment. So if you guys create a pull request with a fix I will test that it isn't broken on Mac and we'll go from there.

@bprosnitz

This comment has been minimized.

Show comment
Hide comment
@bprosnitz

bprosnitz Apr 1, 2015

I can also reproduce this on Ubuntu. I will try to check on mac when I have a chance.

bprosnitz commented Apr 1, 2015

I can also reproduce this on Ubuntu. I will try to check on mac when I have a chance.

@caarlos0

This comment has been minimized.

Show comment
Hide comment
@caarlos0

caarlos0 Apr 30, 2015

I created a docker-compose.yml like this:

hub:
  image: selenium/hub
  ports:
    - "4444:4444"
node:
  image: selenium/node-firefox
  links:
    - hub

Then I put it up with docker-compose up -d and scale it with docker-compose scale node=30.

I'm also getting those type of errors...

It's running in an Ubuntu server 14.04.

caarlos0 commented Apr 30, 2015

I created a docker-compose.yml like this:

hub:
  image: selenium/hub
  ports:
    - "4444:4444"
node:
  image: selenium/node-firefox
  links:
    - hub

Then I put it up with docker-compose up -d and scale it with docker-compose scale node=30.

I'm also getting those type of errors...

It's running in an Ubuntu server 14.04.

@snowe2010

This comment has been minimized.

Show comment
Hide comment
@snowe2010

snowe2010 Jun 4, 2015

Does anyone have a setup that does work? I understand that there are a lot of things that don't work, but really most people just care about a working setup. I'm coming across the same errors with Ubuntu, and I'm even seeing it with boot2docker, so a solution rather than all of these problems would be nice.

snowe2010 commented Jun 4, 2015

Does anyone have a setup that does work? I understand that there are a lot of things that don't work, but really most people just care about a working setup. I'm coming across the same errors with Ubuntu, and I'm even seeing it with boot2docker, so a solution rather than all of these problems would be nice.

@jmewes

This comment has been minimized.

Show comment
Hide comment
@jmewes

jmewes Jun 5, 2015

A colleague of mine setup a Docker Grid on Debian 8 without any of such problems.

jmewes commented Jun 5, 2015

A colleague of mine setup a Docker Grid on Debian 8 without any of such problems.

@caarlos0

This comment has been minimized.

Show comment
Hide comment
@adiherzog

This comment has been minimized.

Show comment
Hide comment
@adiherzog

adiherzog Jun 8, 2015

I have the same problem when running sudo docker run -p=4444:4444 selenium/standalone-firefox on Ubuntu 14.04.

adiherzog commented Jun 8, 2015

I have the same problem when running sudo docker run -p=4444:4444 selenium/standalone-firefox on Ubuntu 14.04.

@adiherzog

This comment has been minimized.

Show comment
Hide comment
@adiherzog

adiherzog Jun 9, 2015

Seems that the problem lies actually in the following lines:

process 734: D-Bus library appears to be incorrectly set up; failed to read machine uuid: Failed to open "/etc/machine-id": No such file or directory
See the manual page for dbus-uuidgen to correct this issue.

See: http://stackoverflow.com/a/22503523

Maybe apt-get install dbus-x11 could be the solution.

adiherzog commented Jun 9, 2015

Seems that the problem lies actually in the following lines:

process 734: D-Bus library appears to be incorrectly set up; failed to read machine uuid: Failed to open "/etc/machine-id": No such file or directory
See the manual page for dbus-uuidgen to correct this issue.

See: http://stackoverflow.com/a/22503523

Maybe apt-get install dbus-x11 could be the solution.

@axelwass

This comment has been minimized.

Show comment
Hide comment
@axelwass

axelwass Jun 27, 2016

installing dbus-x11 on the ubuntu host machine worked for me!

apt-get install dbus-x11

Thanks a lot @adiherzog

axelwass commented Jun 27, 2016

installing dbus-x11 on the ubuntu host machine worked for me!

apt-get install dbus-x11

Thanks a lot @adiherzog

@diemol

This comment has been minimized.

Show comment
Hide comment
@diemol

diemol Sep 7, 2017

Member

This should not be an issue anymore due to the changes and improvements in the images since this was created, please report back and feel free to reopen in case this is still an issue.

Member

diemol commented Sep 7, 2017

This should not be an issue anymore due to the changes and improvements in the images since this was created, please report back and feel free to reopen in case this is still an issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment