# Selenoid
[TOC]
## Запуск
[github](https://github.com/aerokube/cm) | [tutorial](https://aerokube.com/cm/latest/)
Для запуска *selenoid* на сервере с докер необходимо выполнить команду
```bash
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* для возможности наблюдения за работой
```bash
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
```
## Обновление
```bash
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
```
## Проверка
```python
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')
```