SeleniumHQ / SeleniumHQ/docker-selenium

[🐛 Bug]: Chrome does not respect http proxy environment variables

Open
#2,953 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

needs-triaging
Dominant language
Go
Stars
8.7k
Forks
2.5k
Avg merge
10h 16m
Merged PRs (30d)
20

Description

What happened?

I use selenium/node-chrome:109.0 when I add/pass env HTTPS_PROXY/https_proxy then Chromium does not work. Important observation: use proxy with login and password

Command used to start Selenium Grid with Docker (or Kubernetes)
docker-compose up -d --no-deps --force-recreate --build chrome109.0-1
Relevant log output
[root@spb-1 prodenv]# docker logs chrome109.0-1
2025-09-08 00:40:28,553 INFO Included extra file "/etc/supervisor/conf.d/selenium.conf" during parsing
2025-09-08 00:40:28,558 INFO RPC interface 'supervisor' initialized
2025-09-08 00:40:28,558 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2025-09-08 00:40:28,558 INFO supervisord started with pid 8
2025-09-08 00:40:29,561 INFO spawned: 'xvfb' with pid 10
2025-09-08 00:40:29,563 INFO spawned: 'vnc' with pid 11
2025-09-08 00:40:29,565 INFO spawned: 'novnc' with pid 12
2025-09-08 00:40:29,568 INFO spawned: 'selenium-node' with pid 13
2025-09-08 00:40:29,610 INFO success: selenium-node entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
Generating Selenium Config
Configuring server...
Setting up SE_NODE_HOST...
Setting up SE_NODE_PORT...
Tracing is disabled
Selenium Grid Node configuration: 
[events]
publish = "tcp://selenium-hub:4442"
subscribe = "tcp://selenium-hub:4443"

[node]
grid-url = "http://selenium-hub:4444"
session-timeout = "300"
override-max-sessions = false
detect-drivers = false
drain-after-session-count = 0
max-sessions = 1

[[node.driver-configuration]]
display-name = "chrome"
stereotype = '{"browserName": "chrome", "browserVersion": "109.0", "platformName": "Linux"}'
max-sessions = 1

Starting Selenium Grid Node...
2025-09-08 00:40:30,636 INFO success: xvfb entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2025-09-08 00:40:30,636 INFO success: vnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2025-09-08 00:40:30,637 INFO success: novnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
00:40:30.891 INFO [LoggingOptions.configureLogEncoding] - Using the system default encoding
00:40:30.904 INFO [OpenTelemetryTracer.createTracer] - Using OpenTelemetry for tracing
00:40:31.315 INFO [UnboundZmqEventBus.<init>] - Connecting to tcp://selenium-hub:4442 and tcp://selenium-hub:4443
00:40:31.572 INFO [UnboundZmqEventBus.<init>] - Sockets created
00:40:32.592 INFO [UnboundZmqEventBus.<init>] - Event bus ready
00:40:33.107 INFO [NodeServer.createHandlers] - Reporting self as: http://172.19.0.7:5555
00:40:33.173 INFO [NodeOptions.getSessionFactories] - Detected 2 available processors
00:40:33.303 INFO [NodeOptions.report] - Adding chrome for {"browserVersion": "109.0","se:noVncPort": 7900,"browserName": "chrome","platformName": "LINUX","se:vncEnabled": true} 1 times
00:40:33.354 INFO [Node.<init>] - Binding additional locator mechanisms: relative
00:40:33.744 INFO [NodeServer$1.start] - Starting registration process for Node http://172.19.0.7:5555
00:40:33.747 INFO [NodeServer.execute] - Started Selenium node 4.8.0 (revision 267030adea): http://172.19.0.7:5555
00:40:33.760 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
00:40:34.076 INFO [NodeServer.lambda$createHandlers$2] - Node has been added
Operating System

Linux 5.14.0-590.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Fri May 30 21:16:05 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Docker Selenium version (image tag)

node-chrome:109.0

Selenium Grid chart version (chart version)

selenium/hub:4.0.0-20211102

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue with the node-chrome:109.0 image and the provided docker-compose command, using an HTTPS proxy with login credentials. Inspect how the container starts Chromium and passes proxy environment variables; done means Chromium launches and works through the configured proxy.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, docker-compose
Domain
devops, infrastructure, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.