Я пытаюсь заставить мои тесты e2e работать с сеткой селена и хром-узлом, который я настроил в докер-контейнерах, связанных между собой, вот так:
Пока мне удалось запустить контейнеры черезdocker-compose
version: '2'
services:
hub:
image: selenium/hub:latest
ports:
- 4444:4444
chromenode:
image: selenium/node-chrome-debug:latest
volumes:
- /dev/shm:/dev/shm
ports:
- 5900
depends_on:
- hub
environment:
HUB_HOST: hub
Затем я запускаю ng e2e
из моего рабочего каталога на моем хост-компьютере (поэтому не использую docker для создания / обслуживания приложения), я вижу, что мое приложение создано и запущено насервер dev, а затем транспортир запускает и использует мой сервер селена:
Однако, как видно, я получаю сообщение об ошибке, что Angular не может быть найден настраница, ссылающаяся на адрес localhost:49158
, который назначает сервер разработки.
Если я подключу VNC к своему контейнеру, где работает узел chrome, я увижу, что браузер запущен в момент выполнения теста,но не удается найти приложение, работающее на моем хост-компьютере.
Нужно ли сопоставлять localhost на моем chromenode обратно с ip-адресом хост-машины вмойdocker-compose file?
Спасибо
Обновление Итак, я наткнулся на параметр network_mode: "host" docker compose config, который, как я думал, мне нужен, но это не имело никакого значенияпосле попытки и я где-то прочитал, что он может не работать на Mac OSX, на котором я (High Sierra)