Доступ к конечным точкам Chrome devtools, работающим в контейнере docker, с хоста

#docker #google-chrome #docker-compose #google-chrome-devtools

#docker #google-chrome #docker-compose #google-chrome-devtools

Вопрос:

Вот мой docker-compose.yml

 version: '3.8'
services:
  web:
    image: selenium/standalone-chrome:87.0
    tty: true
    command:
        google-chrome --remote-debugging-host=0.0.0.0 --remote-debugging-port=9999 --headless --disable-gpu --no-sandbox --disable-dev-shm-usage --enable-automation --window-size=1440,900 about:blank
    ports:
      - "9999:9999"
 

Журнал контейнера:

 DevTools listening on ws://127.0.0.1:9999/devtools/browser/a2e16249-bcfe-4dd6-a8d4-b85a7a5077ed
 

Из контейнера:

 curl -I http://127.0.0.1:9999/json/list

HTTP/1.1 200 OK
Content-Length:361
Content-Type:application/json; charset=UTF-8
 

С хоста:

 curl -I http://127.0.0.1:9999/json/list

curl: (52) Empty reply from server
 

Устранение неполадок

Я уже пробовал использовать localhost, 127.0.0.1 или любым способом разрешать IP-адрес хоста с помощью host.docker.internal. Если я использую простой http-сервер, работающий на порту 9999, то он хорошо доступен с хоста.

Ответ №1:

Наконец-то у меня получилось, я заменил «—remote-debugging-host = 0.0.0.0» на «—remote-debugging-address = 0.0.0.0»