Конфигурация Docker Selenium не работает должным образом на мосту по умолчанию - PullRequest
0 голосов
/ 01 сентября 2018

Если я создаю отдельную сеть, то эти команды работают правильно, но на мосту по умолчанию не работает. Команды приведены ниже

docker run -d -p 4444:4444 --net bridge --name selenium-hub selenium/hub:3.14.0-beryllium

docker run -d --net bridge -e HUB_HOST=selenium-hub -v /dev/shm:/dev/shm selenium/node-chrome:3.14.0-beryllium
  1. Почему это случилось?

Еще один вопрос, который я использую Docker Compose для докера селена

Итак, я создаю файл составления Docker, как показано ниже

# To execute this docker-compose yml file use `docker-compose -f <file_name> up`
# Add the `-d` flag at the end for detached execution
version: "3.6"
services:
    selenium-hub:
      image: selenium/hub
      network_mode: bridge
      container_name: hub
      ports:
        - "4446:4444"
    firefox:
      image: selenium/node-firefox
      network_mode: bridge
      container_name: firefox-node
      ports:
        - "5557:5555"
        - "49339:5900"
      environment:
        - NODE_MAX_INSTANCES=5
        - NODE_MAX_SESSION=5
      links:
        - "selenium-hub:hub"
    chrome:
      image: selenium/node-chrome
      network_mode: bridge
      container_name: chrome-node
      ports:
        - "5556:5555"
        - "49338:5900"
      environment:
        - NODE_MAX_INSTANCES=5
        - NODE_MAX_SESSION=5
      links:
        - "selenium-hub:hub"

Но здесь я столкнулся с проблемой, что если мы хотим увеличить масштаб узла, тогда произойдет конфликт портов. Мне также нужно выставить порты узла для отладки сценария selenium на узле с помощью VNC.

  1. Таким образом, возможно ли публиковать порт случайным образом из Docker Compose, как опция -P, как мы использовали из Docker run.

  2. Мы упомянули имя контейнера Selenium Grid из Docker compose. Можно ли упомянуть имя узла, даже если мы увеличим узел, он не будет конфликтовать с другими пользовательскими контейнерами.

...