Windows Browsers: How to Run them in Docker containers

Windows Browsers: how to run them in
Docker containers
by Ivan Krutov
About me
Java & Golang developer
Devops
Big Selenium cluster
Big Selenium Cluster
Typical Selenium Grid
50 browsers
10000 sessions / day
1 data center
5 rps
500 Kbit/s
Sometimes down
My cluster
5000+ browsers
2.5M sessions / day
5 data centers
4000 rps
> 2 Gbit/s
24/7/365
Big Selenium Cluster
Selenium Tools
Selenoid BrowsersMoon
Why
75-80% of desktop market share
IE and MS Edge run only under Windows
Legacy applications running under IE only
Different web pages rendering
Windows is the most complicated
Selenium platform
Traditional Selenium testing
Selenium API Web Driver Browser
Traditional Selenium testing
Traditional Selenium testing
IE 8
IE 11
Webdriver
Traditional Selenium testing
Traditional Selenium testing
Traditional Selenium testing on
Windows is very expensive
Browsers in containers
Windows in Docker container
?
Android in Docker container
Appium
Windows in Docker container
Webdriver
Building Windows image (step 1/3)
ISO
LaserDisc
VM Webdriver
Building Windows image (step 2/3)
VM
memory.img
disk.img
Building Windows image (step 3/3)
Windows Images
An efficient launcher
Selenoid
IE 8
IE 11
Edge
Edge
Live Browser Screen
WindowsSelenoidSelenoid UI
VNCWS
Video Recording
Windows ffmpeg Video
X
Windows + Selenoid
Limitations
/dev/kvm
Licenses
VDA
Selenoid Windows
References
https://github.com/aerokube/selenoid
https://github.com/aerokube/windows-images
@aerokube
https://t.me/aerokube
https://aerokube.com/
https://bit.ly/2C2LstZ
1 of 29

Recommended

Introduction openstack horizon by
Introduction openstack horizonIntroduction openstack horizon
Introduction openstack horizonJim Yeh
2.3K views30 slides
Playwright: A New Test Automation Framework for the Modern Web by
Playwright: A New Test Automation Framework for the Modern WebPlaywright: A New Test Automation Framework for the Modern Web
Playwright: A New Test Automation Framework for the Modern WebApplitools
10.5K views150 slides
Playwright Begginers Presentation by
Playwright Begginers PresentationPlaywright Begginers Presentation
Playwright Begginers PresentationFranPerea6
606 views13 slides
Openstack heat & How Autoscaling works by
Openstack heat & How Autoscaling worksOpenstack heat & How Autoscaling works
Openstack heat & How Autoscaling worksCoreStack
2.8K views15 slides
Modern Tools for API Testing, Debugging and Monitoring by
Modern Tools for API Testing, Debugging and MonitoringModern Tools for API Testing, Debugging and Monitoring
Modern Tools for API Testing, Debugging and MonitoringNeil Mansilla
8.6K views27 slides
OpenStack Architecture by
OpenStack ArchitectureOpenStack Architecture
OpenStack ArchitectureMirantis
88.5K views88 slides

More Related Content

What's hot

Browser Automation with Playwright – for integration, RPA, UI testing and mor... by
Browser Automation with Playwright – for integration, RPA, UI testing and mor...Browser Automation with Playwright – for integration, RPA, UI testing and mor...
Browser Automation with Playwright – for integration, RPA, UI testing and mor...Lucas Jellema
1.4K views53 slides
Prometheus and Docker (Docker Galway, November 2015) by
Prometheus and Docker (Docker Galway, November 2015)Prometheus and Docker (Docker Galway, November 2015)
Prometheus and Docker (Docker Galway, November 2015)Brian Brazil
9.8K views33 slides
Monitoring patterns for mitigating technical risk by
Monitoring patterns for  mitigating technical riskMonitoring patterns for  mitigating technical risk
Monitoring patterns for mitigating technical riskItai Frenkel
3K views35 slides
Embedded Android Workshop with Pie by
Embedded Android Workshop with PieEmbedded Android Workshop with Pie
Embedded Android Workshop with PieOpersys inc.
2K views251 slides
How OpenShift SDN helps to automate by
How OpenShift SDN helps to automateHow OpenShift SDN helps to automate
How OpenShift SDN helps to automateIlkka Tengvall
3.9K views29 slides
End to-end monitoring with the prometheus operator - Max Inden by
End to-end monitoring with the prometheus operator - Max IndenEnd to-end monitoring with the prometheus operator - Max Inden
End to-end monitoring with the prometheus operator - Max IndenParis Container Day
2.4K views86 slides

What's hot(20)

Browser Automation with Playwright – for integration, RPA, UI testing and mor... by Lucas Jellema
Browser Automation with Playwright – for integration, RPA, UI testing and mor...Browser Automation with Playwright – for integration, RPA, UI testing and mor...
Browser Automation with Playwright – for integration, RPA, UI testing and mor...
Lucas Jellema1.4K views
Prometheus and Docker (Docker Galway, November 2015) by Brian Brazil
Prometheus and Docker (Docker Galway, November 2015)Prometheus and Docker (Docker Galway, November 2015)
Prometheus and Docker (Docker Galway, November 2015)
Brian Brazil9.8K views
Monitoring patterns for mitigating technical risk by Itai Frenkel
Monitoring patterns for  mitigating technical riskMonitoring patterns for  mitigating technical risk
Monitoring patterns for mitigating technical risk
Itai Frenkel3K views
Embedded Android Workshop with Pie by Opersys inc.
Embedded Android Workshop with PieEmbedded Android Workshop with Pie
Embedded Android Workshop with Pie
Opersys inc.2K views
How OpenShift SDN helps to automate by Ilkka Tengvall
How OpenShift SDN helps to automateHow OpenShift SDN helps to automate
How OpenShift SDN helps to automate
Ilkka Tengvall3.9K views
End to-end monitoring with the prometheus operator - Max Inden by Paris Container Day
End to-end monitoring with the prometheus operator - Max IndenEnd to-end monitoring with the prometheus operator - Max Inden
End to-end monitoring with the prometheus operator - Max Inden
API Testing Presentations.pptx by ManmitSalunke
API Testing Presentations.pptxAPI Testing Presentations.pptx
API Testing Presentations.pptx
ManmitSalunke119 views
Cloud Monitoring with Prometheus by QAware GmbH
Cloud Monitoring with PrometheusCloud Monitoring with Prometheus
Cloud Monitoring with Prometheus
QAware GmbH3.8K views
Using the New Network Load Balancer with Amazon ECS - AWS Online Tech Talks by Amazon Web Services
Using the New Network Load Balancer with Amazon ECS - AWS Online Tech TalksUsing the New Network Load Balancer with Amazon ECS - AWS Online Tech Talks
Using the New Network Load Balancer with Amazon ECS - AWS Online Tech Talks
Amazon Web Services2.9K views
Prometheus by wyukawa
PrometheusPrometheus
Prometheus
wyukawa 1.3K views
Server Monitoring from the Cloud by Site24x7
Server Monitoring from the CloudServer Monitoring from the Cloud
Server Monitoring from the Cloud
Site24x72.1K views
No drama here - E2E-testing django with playwright by Mastacheata1
No drama here - E2E-testing django with playwrightNo drama here - E2E-testing django with playwright
No drama here - E2E-testing django with playwright
Mastacheata1191 views
Postman.ppt by ParrotBAD
Postman.pptPostman.ppt
Postman.ppt
ParrotBAD2.8K views
OpenCanary and Canary Tokens by Mats Karlsson
OpenCanary and Canary TokensOpenCanary and Canary Tokens
OpenCanary and Canary Tokens
Mats Karlsson575 views
Docker Networking Deep Dive by Docker, Inc.
Docker Networking Deep DiveDocker Networking Deep Dive
Docker Networking Deep Dive
Docker, Inc.17.5K views
Automation with ansible by Khizer Naeem
Automation with ansibleAutomation with ansible
Automation with ansible
Khizer Naeem1.6K views
Android Application Seminar_Usman by Usman Sait
Android Application Seminar_UsmanAndroid Application Seminar_Usman
Android Application Seminar_Usman
Usman Sait2.1K views

Similar to Windows Browsers: How to Run them in Docker containers

QA Fest 2017. Иван Крутов. Selenoid: запускаем Selenium тесты в Docker контей... by
QA Fest 2017. Иван Крутов. Selenoid: запускаем Selenium тесты в Docker контей...QA Fest 2017. Иван Крутов. Selenoid: запускаем Selenium тесты в Docker контей...
QA Fest 2017. Иван Крутов. Selenoid: запускаем Selenium тесты в Docker контей...QAFest
2.3K views57 slides
Selenoid: browsers in containers by
Selenoid: browsers in containersSelenoid: browsers in containers
Selenoid: browsers in containersIvan Krutov
813 views57 slides
Oreo, Nougat, Marshmallow and Lollipop: Efficient Android testing in 2019. by
Oreo, Nougat, Marshmallow and Lollipop: Efficient Android testing in 2019.Oreo, Nougat, Marshmallow and Lollipop: Efficient Android testing in 2019.
Oreo, Nougat, Marshmallow and Lollipop: Efficient Android testing in 2019.Ivan Krutov
404 views30 slides
Selenium in Kubernetes: lessons learned by
Selenium in Kubernetes: lessons learnedSelenium in Kubernetes: lessons learned
Selenium in Kubernetes: lessons learnedIvan Krutov
394 views30 slides
Scalable Selenium cluster: up and running by
Scalable Selenium cluster: up and runningScalable Selenium cluster: up and running
Scalable Selenium cluster: up and runningIvan Krutov
1.2K views55 slides
Docker and Selenoid - Make Autotests Great Again by
Docker and Selenoid - Make Autotests Great Again Docker and Selenoid - Make Autotests Great Again
Docker and Selenoid - Make Autotests Great Again COMAQA.BY
4.3K views21 slides

Similar to Windows Browsers: How to Run them in Docker containers(20)

QA Fest 2017. Иван Крутов. Selenoid: запускаем Selenium тесты в Docker контей... by QAFest
QA Fest 2017. Иван Крутов. Selenoid: запускаем Selenium тесты в Docker контей...QA Fest 2017. Иван Крутов. Selenoid: запускаем Selenium тесты в Docker контей...
QA Fest 2017. Иван Крутов. Selenoid: запускаем Selenium тесты в Docker контей...
QAFest2.3K views
Selenoid: browsers in containers by Ivan Krutov
Selenoid: browsers in containersSelenoid: browsers in containers
Selenoid: browsers in containers
Ivan Krutov813 views
Oreo, Nougat, Marshmallow and Lollipop: Efficient Android testing in 2019. by Ivan Krutov
Oreo, Nougat, Marshmallow and Lollipop: Efficient Android testing in 2019.Oreo, Nougat, Marshmallow and Lollipop: Efficient Android testing in 2019.
Oreo, Nougat, Marshmallow and Lollipop: Efficient Android testing in 2019.
Ivan Krutov404 views
Selenium in Kubernetes: lessons learned by Ivan Krutov
Selenium in Kubernetes: lessons learnedSelenium in Kubernetes: lessons learned
Selenium in Kubernetes: lessons learned
Ivan Krutov394 views
Scalable Selenium cluster: up and running by Ivan Krutov
Scalable Selenium cluster: up and runningScalable Selenium cluster: up and running
Scalable Selenium cluster: up and running
Ivan Krutov1.2K views
Docker and Selenoid - Make Autotests Great Again by COMAQA.BY
Docker and Selenoid - Make Autotests Great Again Docker and Selenoid - Make Autotests Great Again
Docker and Selenoid - Make Autotests Great Again
COMAQA.BY 4.3K views
Chrome Developer Tools Protocol: Scaling and Running in Kubernetes cluster by Ivan Krutov
Chrome Developer Tools Protocol: Scaling and Running in Kubernetes clusterChrome Developer Tools Protocol: Scaling and Running in Kubernetes cluster
Chrome Developer Tools Protocol: Scaling and Running in Kubernetes cluster
Ivan Krutov175 views
Scalable. Reliable. Lightning fast. Running 1 000 000 tests with Selenoid. by Ivan Krutov
Scalable. Reliable. Lightning fast. Running 1 000 000 tests with Selenoid.Scalable. Reliable. Lightning fast. Running 1 000 000 tests with Selenoid.
Scalable. Reliable. Lightning fast. Running 1 000 000 tests with Selenoid.
Ivan Krutov807 views
Chrome Developer Tools with Selenoid by Ivan Krutov
Chrome Developer Tools with SelenoidChrome Developer Tools with Selenoid
Chrome Developer Tools with Selenoid
Ivan Krutov533 views
Testing with Jenkins, Selenium and Continuous Deployment by Max Klymyshyn
Testing with Jenkins, Selenium and Continuous DeploymentTesting with Jenkins, Selenium and Continuous Deployment
Testing with Jenkins, Selenium and Continuous Deployment
Max Klymyshyn15.2K views
QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster by QAFest
QA Fest 2019. Иван Крутов. Bulletproof Selenium ClusterQA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QAFest282 views
Test Automation Using Selenium by Nikhil Kapoor
Test Automation Using SeleniumTest Automation Using Selenium
Test Automation Using Selenium
Nikhil Kapoor211 views
Selenium2 and Jenkins: Almost pain-free UI Testing by mikereedell
Selenium2 and Jenkins: Almost pain-free UI TestingSelenium2 and Jenkins: Almost pain-free UI Testing
Selenium2 and Jenkins: Almost pain-free UI Testing
mikereedell5K views
Jenkins & Selenium by adamcarmi
Jenkins & SeleniumJenkins & Selenium
Jenkins & Selenium
adamcarmi2.3K views
Scaling your Automated Tests: Docker and Kubernetes by Manoj Kumar Kumar
Scaling your Automated Tests: Docker and KubernetesScaling your Automated Tests: Docker and Kubernetes
Scaling your Automated Tests: Docker and Kubernetes
Manoj Kumar Kumar674 views
Designing keyword and Data Driven Automation framework with Selenium by Edureka!
Designing keyword and Data Driven Automation framework with SeleniumDesigning keyword and Data Driven Automation framework with Selenium
Designing keyword and Data Driven Automation framework with Selenium
Edureka!2.7K views

Recently uploaded

Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea... by
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...Safe Software
391 views59 slides
Citi TechTalk Session 2: Kafka Deep Dive by
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Diveconfluent
17 views60 slides
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023 by
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023Icinga
36 views17 slides
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM... by
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...Deltares
7 views40 slides
Software testing company in India.pptx by
Software testing company in India.pptxSoftware testing company in India.pptx
Software testing company in India.pptxSakshiPatel82
7 views9 slides
Cycleops - Automate deployments on top of bare metal.pptx by
Cycleops - Automate deployments on top of bare metal.pptxCycleops - Automate deployments on top of bare metal.pptx
Cycleops - Automate deployments on top of bare metal.pptxThanassis Parathyras
30 views12 slides

Recently uploaded(20)

Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea... by Safe Software
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Safe Software391 views
Citi TechTalk Session 2: Kafka Deep Dive by confluent
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
confluent17 views
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023 by Icinga
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Icinga36 views
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM... by Deltares
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...
Deltares7 views
Software testing company in India.pptx by SakshiPatel82
Software testing company in India.pptxSoftware testing company in India.pptx
Software testing company in India.pptx
SakshiPatel827 views
Cycleops - Automate deployments on top of bare metal.pptx by Thanassis Parathyras
Cycleops - Automate deployments on top of bare metal.pptxCycleops - Automate deployments on top of bare metal.pptx
Cycleops - Automate deployments on top of bare metal.pptx
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports by Ra'Fat Al-Msie'deen
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsBushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
DSD-INT 2023 Baseline studies for Strategic Coastal protection for Long Islan... by Deltares
DSD-INT 2023 Baseline studies for Strategic Coastal protection for Long Islan...DSD-INT 2023 Baseline studies for Strategic Coastal protection for Long Islan...
DSD-INT 2023 Baseline studies for Strategic Coastal protection for Long Islan...
Deltares10 views
MariaDB stored procedures and why they should be improved by Federico Razzoli
MariaDB stored procedures and why they should be improvedMariaDB stored procedures and why they should be improved
MariaDB stored procedures and why they should be improved
DSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - Prida by Deltares
DSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - PridaDSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - Prida
DSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - Prida
Deltares17 views
A first look at MariaDB 11.x features and ideas on how to use them by Federico Razzoli
A first look at MariaDB 11.x features and ideas on how to use themA first look at MariaDB 11.x features and ideas on how to use them
A first look at MariaDB 11.x features and ideas on how to use them
Federico Razzoli44 views
DSD-INT 2023 Thermobaricity in 3D DCSM-FM - taking pressure into account in t... by Deltares
DSD-INT 2023 Thermobaricity in 3D DCSM-FM - taking pressure into account in t...DSD-INT 2023 Thermobaricity in 3D DCSM-FM - taking pressure into account in t...
DSD-INT 2023 Thermobaricity in 3D DCSM-FM - taking pressure into account in t...
Deltares9 views
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko... by Deltares
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
Deltares10 views
DSD-INT 2023 HydroMT model building and river-coast coupling in Python - Bove... by Deltares
DSD-INT 2023 HydroMT model building and river-coast coupling in Python - Bove...DSD-INT 2023 HydroMT model building and river-coast coupling in Python - Bove...
DSD-INT 2023 HydroMT model building and river-coast coupling in Python - Bove...
Deltares15 views
Copilot Prompting Toolkit_All Resources.pdf by Riccardo Zamana
Copilot Prompting Toolkit_All Resources.pdfCopilot Prompting Toolkit_All Resources.pdf
Copilot Prompting Toolkit_All Resources.pdf
Riccardo Zamana6 views
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ... by Donato Onofri
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Donato Onofri643 views
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut... by HCLSoftware
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...
HCLSoftware6 views

Windows Browsers: How to Run them in Docker containers