Selenoid

Запуск

github | tutorial

Для запуска selenoid на сервере с докер необходимо выполнить команду

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
    -v ${HOME}:/root \
    -e OVERRIDE_HOME=${HOME} \
    aerokube/cm:latest-release selenoid start --vnc --tmpfs 128

Данная команда скачает все необходимые образы для работы. Через несколько минут работа команды завершится и автоматически запустится сервер solinoid-а, который будет слушать порт 4444.

Дополнительно можно запустить selenoid-ui для возможности наблюдения за работой

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
    -v ${HOME}:/root \
    -e OVERRIDE_HOME=${HOME} \
    aerokube/cm:latest-release selenoid-ui start

Обновление

docker pull selenoid/firefox
docker pull selenoid/vnc_firefox:VERSION
vim .aerokube/selenoid/browsers.json
# ...
docker stop selenoid && docker rm selenoid
docker stop selenoid-ui && docker rm selenoid-ui
docker rmi aerokube/selenoid:VERSION
docker rmi aerokube/selenoid-ui:VERSION
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
    -v ${HOME}:/root \
    -e OVERRIDE_HOME=${HOME} \
    aerokube/cm:latest-release selenoid start --vnc --tmpfs 128
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
    -v ${HOME}:/root \
    -e OVERRIDE_HOME=${HOME} \
    aerokube/cm:latest-release selenoid-ui start

Проверка

from selenium import webdriver 

capabilities = { "browserName": "firefox", "version": "77.0", "enableVNC": True, "enableVideo": False }

driver = webdriver.Remote(
  command_executor="http://selenoid:4444/wd/hub",
  desired_capabilities=capabilities
)

driver.get('http://ya.ru')