Chrome Version: 88.0.4324.150
Chromedriver Version: 88.0.4324.96
Selenium Version: 3.141.0
Python Version: 3.8.7
Trying to run selenium on a non-root docker container which started in read-only mode with write permission only to /tmp
. When I try to start the driver it's failing with the following error.
[ERROR] SessionNotCreatedException: Message: session not created from tab crashed
I looked at this great answer for similar question but it doesn't solve my issue.
Stacktrace:
File "/var/task/app.py", line 106, in tc0011
driver = webdriver.Chrome(options=chrome_options, service_args=['--verbose'], service_log_path='/tmp/chromedriver.log')
File "/var/lang/lib/python3.8/site-packages/selenium/webdriver/chrome/webdriver.py", line 76, in __init__
RemoteWebDriver.__init__(
File "/var/lang/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "/var/lang/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/var/lang/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/var/lang/lib/python3.8/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
Code Snippet:
chrome_options = ChromeOptions()
chrome_options.add_argument('--headless')
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")
chrome_options.add_argument("--disable-gpu")
chrome_options.add_argument("--no-zygote")
chrome_options.add_argument("--single-process")
chrome_options.add_argument("--disable-dev-tools")
chrome_options.add_argument("--enable-automation")
chrome_options.add_argument("--enable-logging")
chrome_options.add_argument("--log-level=1")
chrome_options.add_argument("--shared-memory-path=/tmp/")
chrome_options.add_argument("--user-data-dir=/tmp/chrome-user-data")
driver = webdriver.Chrome(options=chrome_options, service_args=['--verbose'], service_log_path='/tmp/chromedriver.log')
driver.get('http://checkip.dyndns.org/')
Additional errors that I'm seeing in chromedriver log:
[1613321954.518][INFO]: Launching chrome: /usr/bin/google-chrome --disable-background-networking --disable-client-side-phishing-detection --disable-default-apps --disable-dev-shm-usage --disable-dev-tools --disable-gpu --disable-hang-monitor --disable-popup-blocking --disable-prompt-on-repost --disable-sync --enable-automation --enable-blink-features=ShadowDOMV0 --enable-logging --headless --log-level=1 --no-first-run --no-sandbox --no-service-autorun --no-zygote --password-store=basic --remote-debugging-port=0 --shared-memory-path=/tmp/ --single-process --test-type=webdriver --use-mock-keychain --user-data-dir=/tmp/chrome-user-data
/usr/bin/google-chrome: line 45: /dev/fd/62: No such file or directory
/usr/bin/google-chrome: line 46: /dev/fd/62: No such file or directory
[0214/165916.000025:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[1613321957.115][INFO]: [1b0728b6a40073109287b767c4b51c8d] RESPONSE InitSession ERROR session not created
from tab crashed
(Session info: headless chrome=88.0.4324.150)