【发布时间】:2018-12-12 04:43:37
【问题描述】:
我已经为此苦恼了几个小时,似乎无法在任何地方找到解决方案 -
我在一个用 Typescript 编写的 Docker 容器中设置了一个简单的 Node API,我正在尝试使用 VSCode 附加到它以进行调试。我能够连接到它(并且调试控制台会显示它)但是一旦我尝试设置断点,我就会返回Breakpoints set but not yet bound。
这是我的 launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "Attach to Docker",
"type": "node",
"request": "attach",
"port":9229,
"restart": true,
"sourceMaps": false,
"localRoot": "${workspaceRoot}",
"remoteRoot": "/api",
"protocol" : "inspector",
"trace": "verbose"
}
]
}
带有调试器的终端输出
web_1 | Debugger listening on ws://0.0.0.0:9229/44aca479-580c-4ecb-a104-cf80f9041538 │
web_1 | For help, see: https://nodejs.org/en/docs/inspector
web_1 | Debugger attached.
节点应用程序以node --inspect=0.0.0.0:9229 启动。我尝试运行一些 Mocha 测试,但我之前设置的所有断点都被完全忽略了。谁能帮我看看?这是我目前的repo,但我将努力在 Docker 中设置一个简单的 TS 应用程序,以尝试缩小可能性。
谢谢!
【问题讨论】:
-
不确定这是否有帮助,或者我是否正确阅读了您的问题...但我只是将我的(节点)容器卷映射到包含我的 vscode 的(本地)驱动器?
-
不太确定我是否关注@Intellidroid
-
在我的 docker compose 文件中,我会将卷设置为映射到我的代码所在的本地文件夹......所以“卷:./vscode-nodeserver-files:/directory-in-容器”
-
如何运行摩卡测试?我猜运行它们的包脚本与启动 api/应用程序的包脚本不同,因此不会检查 mocha 脚本。
标签: node.js typescript docker visual-studio-code mocha.js