WebStorm Node.js 远程调试是否与 Docker 容器中的 Node.js v8 一起工作?
Does WebStorm Node.js Remote Debug work with Node.js v8 in Docker container?
使用 chrome://inspect
我可以访问 0.0.0.0:56745
进行调试,
但我发现在 WebStorm 中进行调试的体验要好得多。我尝试创建这样的 Node.js Remote Debug
配置以查看 WebStorm 是否支持它:
js文件中的任何断点都没有响应。
你能告诉我 WebStorm 是否支持在最新的 2017.2.5 版本中调试 WebStorm 内部的 Docker 节点(不是通过 Chrome 开发人员工具)?
docker-compose.yml
version: '3'
services:
web:
build:
context: .
dockerfile: docker/DockerfileDev.df
image: web:dev
ports:
- "3000:3000"
- "0.0.0.0:56745:56745"
expose:
- "56745"
entrypoint: ["npm", "run","nodemon" ]
package.json:
"scripts": {
"nodemon": "./node_modules/nodemon/bin/nodemon.js --inspect=0.0.0.0:56745 --debug-brk index.js"
},
DockerfileDev.df
FROM node:8
# some other stuff
更新
远程调试器显示它正在连接,但控制台中没有任何内容,也没有在断点处暂停:
Node.js Remote 运行 配置只能在使用基于 TCP 的协议进行调试时使用 (Node.js < 7.x).
要使用 Chrome 调试协议远程调试应用程序(使用 --inspect
/--inspect-brk
、Node.js 7+),您需要使用 Chromium Remote 运行配置
在花了几天时间试图找出问题所在之后,我发现我需要将远程调试主机设置为:
本地主机
然后,确保将 Virtual Box 中的 "default" 机器更新到 forward 端口:
56745(NAT)
我想,通过这种方式,webstorm 可以通过您的主机连接到容器调试器。至少那是我让 Nodejs v8 工作的方式。
祝你好运!
使用 chrome://inspect
我可以访问 0.0.0.0:56745
进行调试,
但我发现在 WebStorm 中进行调试的体验要好得多。我尝试创建这样的 Node.js Remote Debug
配置以查看 WebStorm 是否支持它:
js文件中的任何断点都没有响应。
你能告诉我 WebStorm 是否支持在最新的 2017.2.5 版本中调试 WebStorm 内部的 Docker 节点(不是通过 Chrome 开发人员工具)?
docker-compose.yml
version: '3'
services:
web:
build:
context: .
dockerfile: docker/DockerfileDev.df
image: web:dev
ports:
- "3000:3000"
- "0.0.0.0:56745:56745"
expose:
- "56745"
entrypoint: ["npm", "run","nodemon" ]
package.json:
"scripts": {
"nodemon": "./node_modules/nodemon/bin/nodemon.js --inspect=0.0.0.0:56745 --debug-brk index.js"
},
DockerfileDev.df
FROM node:8
# some other stuff
更新
远程调试器显示它正在连接,但控制台中没有任何内容,也没有在断点处暂停:
Node.js Remote 运行 配置只能在使用基于 TCP 的协议进行调试时使用 (Node.js < 7.x).
要使用 Chrome 调试协议远程调试应用程序(使用 --inspect
/--inspect-brk
、Node.js 7+),您需要使用 Chromium Remote 运行配置
在花了几天时间试图找出问题所在之后,我发现我需要将远程调试主机设置为: 本地主机
然后,确保将 Virtual Box 中的 "default" 机器更新到 forward 端口: 56745(NAT)
我想,通过这种方式,webstorm 可以通过您的主机连接到容器调试器。至少那是我让 Nodejs v8 工作的方式。
祝你好运!