seleniumhq-community / docker-seleniarm

Multi-Arch (arm64/armhf/amd64) Docker images for the Selenium Grid Server
https://hub.docker.com/u/seleniarm
Other
249 stars 26 forks source link

[🐛 Bug]: arm64 chromium not working #43

Closed liuruibin closed 2 months ago

liuruibin commented 1 year ago

What happened?

image

Command used to start Selenium Grid with Docker

docker run --rm -it -p 4444:4444 -p 5900:5900 -p 7900:7900 --shm-size 2g seleniarm/standalone-chromium:latest

Relevant log output

Could not start a new session. Response code 500. Message: Could not start a new session. Could not start a new session. Error while creating session with the driver service. Stopping driver service: Driver server process died prematurely.
Build info: version: '4.8.3', revision: 'b19b418e60'
System info: os.name: 'Linux', os.arch: 'aarch64', os.version: '4.18.0-348.20.1.el7.aarch64', java.version: '11.0.18'
Driver info: driver.version: unknown 
Host info: host: 'b19245637199', ip: '172.30.10.20'
Build info: version: '4.8.3', revision: 'b19b418e60'
System info: os.name: 'Linux', os.arch: 'aarch64', os.version: '4.18.0-348.20.1.el7.aarch64', java.version: '11.0.18'
Driver info: driver.version: unknown
Build info: version: '4.8.3', revision: 'b19b418e60'
System info: os.name: 'Linux', os.arch: 'aarch64', os.version: '4.18.0-348.20.1.el7.aarch64', java.version: '11.0.18'
Driver info: driver.version: unknown
Build info: version: '4.8.3', revision: 'e5e76298c3'
System info: os.name: 'Linux', os.arch: 'aarch64', os.version: '4.18.0-348.20.1.el7.aarch64', java.version: '17.0.7'
Driver info: org.openqa.selenium.remote.RemoteWebDriver
Command: [null, newSession {capabilities=[Capabilities {acceptInsecureCerts: true, browserName: chrome, goog:chromeOptions: {args: [--remote-allow-origins=*, --headless=new, --lang=zh-CN, --enable-logging --v=1, --ignore-certificate-errors], extensions: [], prefs: {intl.accept_languages: zh-CN}}, proxy: Proxy(system)}], desiredCapabilities=Capabilities {acceptInsecureCerts: true, browserName: chrome, goog:chromeOptions: {args: [--remote-allow-origins=*, --headless=new, --lang=zh-CN, --enable-logging --v=1, --ignore-certificate-errors], extensions: [], prefs: {intl.accept_languages: zh-CN}}, proxy: Proxy(system)}}]
Capabilities {acceptInsecureCerts: true, browserName: chrome, goog:chromeOptions: {args: [--remote-allow-origins=*, --headless=new, --lang=zh-CN, --enable-logging --v=1, --ignore-certificate-errors], extensions: [], prefs: {intl.accept_languages: zh-CN}}, proxy: Proxy(system)}
org.openqa.selenium.SessionNotCreatedException
   at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:148)
   at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:106)
   at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:67)
   at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:165)
   at org.openqa.selenium.remote.TracedCommandExecutor.execute(TracedCommandExecutor.java:51)
   at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:543)
   at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:229)
   at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:157)
   at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:139)
   at com.googlecode.jmeter.plugins.webdriver.config.RemoteDriverConfig.createBrowser(RemoteDriverConfig.java:32)
   at com.googlecode.jmeter.plugins.webdriver.config.RemoteDriverConfig.threadStarted(RemoteDriverConfig.java:60)
   at org.apache.jmeter.threads.JMeterThread$ThreadListenerTraverser.addNode(JMeterThread.java:816)
   at org.apache.jorphan.collections.HashTree.traverseInto(HashTree.java:989)
   at org.apache.jorphan.collections.HashTree.traverse(HashTree.java:972)
   at org.apache.jmeter.threads.JMeterThread.threadStarted(JMeterThread.java:784)
   at org.apache.jmeter.threads.JMeterThread.initRun(JMeterThread.java:772)
   at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:260)
   at java.base/java.lang.Thread.run(Thread.java:833)
2023-08-03 10:55:22 ERROR e541a5f8 1-1 Error while processing sampler: 'WebDriverSampler'.
Browser has not been configured.  Please ensure at least 1 WebDriverConfig is created for a ThreadGroup.
java.lang.IllegalArgumentException
   at com.googlecode.jmeter.plugins.webdriver.sampler.WebDriverSampler.sample(WebDriverSampler.java:65)
   at org.apache.jmeter.threads.JMeterThread.doSampling(JMeterThread.java:670)
   at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:588)
   at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:500)
   at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:264)
   at java.base/java.lang.Thread.run(Thread.java:833)

Operating System

centos 7.6 arm64

Docker Selenium version (tag)

4.10.0

liqiang-fit2cloud commented 1 year ago

Had same problem, the image seleniarm/standalone-chromium:latest works fine in amd64 server, but not woking in arm64.

Elyeu1 commented 1 year ago

I have the same problem with arm64

VietND96 commented 2 months ago

ARM64 images is merged to selenium registry and using Ubuntu based (https://www.selenium.dev/blog/2024/multi-arch-images-via-docker-selenium/). Can you please check latest images and confirm this issue is resolved?