无法连接到暴露的Docker容器端口上的Node.js检查器

sab*_*gen 3 node.js google-chrome-devtools docker

运行该命令docker run -p 9222:9229 --name node-inspect-test -d node:alpine node --inspect-brk -e 'console.log("hello world")'应该在Docker主机上的端口上公开node.js检查器9222.

运行curl http://localhost:9222/json结果curl: (56) Recv failure: Connection reset by peer.

从容器内请求相同的端点docker exec -it node-inspect-test wget -qO- http://localhost:9229/json成功.

为什么暴露的端口9222没有9229成功转发到内部端口?

我正在运行Docker版本17.06.0-ce,在Ubuntu 16.04.2上构建02c1d87.

sab*_*gen 8

默认情况下,节点检查器侦听环回接口.该--inspect-brk标志可以选择指定主机和端口.为了让调试器监听所有接口以便可以通过Docker主机访问它,请使用该标志--inspect-brk=0.0.0.0:9229.

  • 感谢您回来发布答案,解决了我的问题! (2认同)