Невозможно подключиться к контролеру Jest (порт 9230) на Node.js Chrome инспектор
Когда я запускаю: docker exec -it test_api_run_eb9ed32c928a wget -qO- http://localhost:9230/json
JSON возвращается из контейнера:
[ {
"description": "node.js instance",
"devtoolsFrontendUrl": "chrome-devtools://devtools/bundled/js_app.html?experiments=true&v8only=true&ws=localhost:9230/a0dab38a-e6d8-43a3-a459-e3ea9eabf470",
"devtoolsFrontendUrlCompat": "chrome-devtools://devtools/bundled/inspector.html?experiments=true&v8only=true&ws=localhost:9230/a0dab38a-e6d8-43a3-a459-e3ea9eabf470",
"faviconUrl": "https://nodejs.org/static/favicon.ico",
"id": "a0dab38a-e6d8-43a3-a459-e3ea9eabf470",
"title": "node_modules/.bin/jest",
"type": "node",
"url": "file:///usr/src/sand/node_modules/jest/bin/jest.js",
"webSocketDebuggerUrl": "ws://localhost:9230/a0dab38a-e6d8-43a3-a459-e3ea9eabf470"
} ]
Но когда я получаю доступ к chrome://inspect
, ресурс не указывается. Я уже добавил localhost:9230
как цель сети для обнаружения.
Когда я получаю доступ к chrome-devtools://devtools/bundled/js_app.html?experiments=true&v8only=true&ws=localhost:9230/a0dab38a-e6d8-43a3-a459-e3ea9eabf470
в браузере, Chrome ошибки с:
Debugging connection was closed. Reason: WebSocket disconnected
Docker Порт
Работает docker port test_api_run_eb9ed32c928a 9230
Возвращает: Error: No public port '9230/tcp' published for test_api_run_eb9ed32c928a
Docker Фрагмент композиции:
expose:
- '8000'
ports:
- '127.0.0.1:9230:9230'
- Я также пытался удалить
127.0.0.1:
из ports:
в этой композиции
Node.js / Команда запуска Jest:
node --inspect-brk=0.0.0.0:9230 node_modules/.bin/jest --forceExit --runInBand
Выход CLI: Debugger listening on ws://0.0.0.0:9230/74d22b62-051d-4aa3-b312-5f4defb170e6
Работает netstat -a
в контейнере:
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:9230 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.11:41339 0.0.0.0:* LISTEN
netstat: /proc/net/tcp6: No such file or directory
udp 0 0 127.0.0.11:53289 0.0.0.0:*
netstat: /proc/net/udp6: No such file or directory
netstat: /proc/net/raw6: No such file or directory
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path
Docker проверка на контейнере (фрагмент NetworkSettings):
"NetworkSettings": {
"Bridge": "",
"SandboxID": "5c1fb6ad8189e4407cf40eb8dc0d9f0f8eacc13df6bb0b45b8d48d51da33655f",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {
"9230/tcp": null
},
"SandboxKey": "/var/run/docker/netns/5c1fb6ad8189",
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "",
"Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "",
"IPPrefixLen": 0,
"IPv6Gateway": "",
"MacAddress": "",
"Networks": {
"test_sand": {
"IPAMConfig": null,
"Links": null,
"Aliases": [
"51117364a172"
],
"NetworkID": "338c689e41c4ecbb691626560f6f98a04f6d9a93e640a766d37faa773e5ce760",
"EndpointID": "0c161fd96b88a60ea10a85d81aeda09cd936added4363dd7ba6613dea3ad9045",
"Gateway": "172.18.0.1",
"IPAddress": "172.18.0.4",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:12:00:04",
"DriverOpts": null
}
}
}
Область, которая выглядит проблемной c:
"Ports": {
"9230/tcp": null
},
- Вывод Netstat также выглядит странно
Есть ли шаг, который мне не хватает для разрешения, или неверная конфигурация порта, или что-то еще, мешающее работе сети?