Удаленка для jenkins+selenide+selenoid+allure+docker спецов на 2-3 часа в день. 100% remote! Присоединиться к проекту

Не могу наконфигать Selenoid на MAC OS локально

osx
selenoid
selenium-grid
webdriver
Теги: #<Tag:0x00007fedb81cc278> #<Tag:0x00007fedb81cc0e8> #<Tag:0x00007fedb81d3f28> #<Tag:0x00007fedb81d3de8>

(Taras) #1

И так , попробовал наконфигать Selenoid локально.

  1. Поставил docker на Mac El Capitano.
  2. Сделал Quick Start Guide от сюда - http://aerokube.com/selenoid/latest/#_quick_start_guide
  3. Вот мой browser.json файл
  4. Запустил Selenoid UI https://github.com/aerokube/selenoid-ui - браузери “не подгружаються”
  5. Все images в browsers.json указани с vnc - также добавил (“enableVNC”, true) в desired capabilities -
    но глухо

Вопроси
1.Запускаю свои тести - тести работают, но на UI-ке Selenoid-a нифига не видно. В чем проблема ?
2. Тести когда проходять - никаких логов в консоли тип info, debug, error тоже не видно - где их увидеть ?


(Sergey Korol) #2

Какую docker команду использовали для старта UI?


(Taras) #4

взял от сюда:

docker run -d --name selenoid-ui -p 8080:8080 aerokube/selenoid-ui --selenoid-uri=http://selenoid-host


(Taras) #5

чето мне кажеться что я контейнери не правильно поднял с браузерами,
я просто делал docker pull selenoid:vnc/chrome_58 и потом в browser.json прописал етот image


(Остап Олексин) #6

Что прописано в параметре –selenoid-uri? localhost или IP адрес машины?


(Taras) #7

–selenoid-uri=http://selenoid-host

а что нужно порписать ?


(Остап Олексин) #8

У меня работает если прописать IP адрес машины.


(Taras) #9

Типа --selenoid-uri=http://91.213.92.3 ?


(Taras) #10

пробую и localhost и IP - тоже самое
undefined browser


(Taras) #11

Окей, вопрос такой, можно инстукцию как ви ставили docker и image-и с браузерами ? Может я чет накосячил на етом месте


(Остап Олексин) #12

Нужно еще порт --selenoid-uri=http://91.213.92.3:4444

Делал приблизительно так:

  1. Создал browsers.json в папке /etc/selenoid/ с нужными браузерами

  2. Запустил команду cat /path/to/browsers.json | jq -r '..|.image?|strings' | xargs -I{} docker pull {} которая скачала нужние image-и. Это можно сделать и просто через обыкновенный docker pull selenoid/vnc:chrome_58.0

  3. Запустил selenoid командой docker run -d --name selenoid -p 4444:4444 -v /etc/selenoid:/etc/selenoid:ro -v /var/run/docker.sock:/var/run/docker.sock aerokube/selenoid:latest

  4. Запустил selenoid-ui командой docker run -d --name selenoid-ui -p 8080:8080 aerokube/selenoid-ui --selenoid-uri=http://192.168.100.101:4444

Посмотрите логи selenoid контейнера, может там будуть какие-то ошибки: docker logs selenoid

На счет параметра --log-level=DEBUG в browsers.json не уверен, в офф доках он упоминается только в разделе Using Selenoid without Docker


(Taras) #13

окей, попробую дома потом , отпишусь


(Taras) #14

Кароче проблема все та же осталась, UI-ка нифига не показивает, буду пробовать все сносить (то что понаставлял) - переставлю docker и попробую замутить все сначала … отпишусь


(Taras) #15

блин, ну похоже все ваши шаги и делаю и UI-ка нифига не показивает … буду пробовать все с нуля конфигать наново


(Taras) #16

у меня била ошибка в json файле browsers.json - я ее пофиксал, снова нифига на selenoid-ui не видно и проблема похоже вот в чем:

/etc/selenoid $ docker logs selenoid
2017/06/22 10:03:06 Loading configuration files...
2017/06/22 10:03:06 Loaded configuration from [/etc/selenoid/browsers.json]
2017/06/22 10:03:06 Using default containers log configuration because of: read error: open config/container-logs.json: no such file or directory
2017/06/22 10:03:06 Timezone: Local
2017/06/22 10:03:06 Listening on :4444
/etc/selenoid $ docker logs selenoid-ui
2017/06/22 10:12:38 Listening on :8080
2017/06/22 10:12:56 Client added. 1 registered clients
2017/06/22 10:12:59 can't get status (Get http://selenoid-host:4444/status: context deadline exceeded)
2017/06/22 10:13:04 can't get status (Get http://selenoid-host:4444/status: context deadline exceeded)
2017/06/22 10:13:09 can't get status (Get http://selenoid-host:4444/status: context deadline exceeded)

(Taras) #17

если убрать порт с selenoid-ui проперти, то такое:

/etc/selenoid $ docker logs selenoid-ui
2017/06/22 10:26:47 Listening on :8080
2017/06/22 10:26:59 Client added. 1 registered clients
2017/06/22 10:27:02 can't get status (invalid character '<' looking for beginning of value)
2017/06/22 10:27:07 can't get status (invalid character '<' looking for beginning of value)

(Taras) #18

Пофиксалось - УРА !

Фикс:

If you use default network mode, then just

$ DOCKER_GATEWAY_ADDR=`docker inspect selenoid -f {{.NetworkSettings.Gateway}}`
$ echo $DOCKER_GATEWAY_ADDR
172.17.0.1 
May be different
$ docker run -d --name selenoid-ui -p 8080:8080 aerokube/selenoid-ui --selenoid-uri http://${DOCKER_GATEWAY_ADDR}:4444

(Остап Олексин) #19

Еще можно запустить просто используя link, если и selenoid и selenoid-ui на одном хосте:
docker run -d --name selenoid-ui --link selenoid -p 8080:8080 aerokube/selenoid-ui --selenoid-uri=http://selenoid:4444