Docker: Env var flag to upgrade latest version of Chrome and ChromeDriver#2872
Docker: Env var flag to upgrade latest version of Chrome and ChromeDriver#2872
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||
…iver Signed-off-by: Viet Nguyen Duc <nguyenducviet4496@gmail.com>
4fd50dc to
ca8c45e
Compare
CI Feedback 🧐(Feedback updated until commit ca8c45e)A test triggered by this PR failed. Here is an AI-generated analysis of the failure:
|
CI Feedback 🧐A test triggered by this PR failed. Here is an AI-generated analysis of the failure:
|
…iver (SeleniumHQ#2872) Signed-off-by: Viet Nguyen Duc <nguyenducviet4496@gmail.com>
User description
Thanks for contributing to the Docker-Selenium project!
A PR well described will help maintainers to quickly review and merge it
Before submitting your PR, please check our contributing guidelines, applied for this repository.
Avoid large PRs, help reviewers by making them as simple and short as possible.
Description
Fixes #2829 (Scope in node-chrome, standalone-chrome - arch linux/amd64)
There are 2 ways of usage of this feature.
Set the container environment
SE_UPDATE_CHROME_COMPONENTStotrueExample
docker run -d -p 4444:4444 -p 5900:5900 --shm-size="2g" -e SE_UPDATE_CHROME_COMPONENTS=true selenium/standalone-chrome:latestTradeoff:
Note that after the container gets restarted, updated binaries will be lost unless you call the update script within the build container process (the second usage below).
Create a simple Dockerfile as below
docker buildx build --platform linux/amd64 -t selenium/standalone-chrome:my-latest .Motivation and Context
Types of changes
Checklist
PR Type
Enhancement
Description
Add runtime Chrome/ChromeDriver update capability via environment variable
Refactor installation scripts into modular, reusable components
Support both runtime updates and build-time customization
Enable automatic version detection and architecture handling
Changes diagram
Changes walkthrough 📝
7 files
Add Chrome components update check at startupCreate modular Chrome installation scriptCreate modular ChromeDriver installation scriptAdd runtime update orchestration scriptAdd Chrome components update check at startupRefactor to use modular installation scriptsAdd error handling and shebang improvement