How do I use docker-compose.debug.yml to debug my node running in docker?

后端 未结 2 1040
予麋鹿
予麋鹿 2021-01-13 18:35

I have used vs docker extension to create docker files. But I don\'t know what is the \"proper\" way to use docker-compose.debug.yml to debug my code, e.g. how do I set my e

相关标签:
2条回答
  • 2021-01-13 18:52

    You can do that but through some modifications.

    launch.json

    {
        // Use IntelliSense to learn about possible Node.js debug attributes.
        // Hover to view descriptions of existing attributes.
        // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
        "version": "0.2.0",
        "configurations": [
            {
                "type": "node",
                "request": "attach",
                "name": "Attach to Remote",
                "address": "127.0.0.1",
                "port": 9229,
                "localRoot": "${workspaceRoot}",
                "remoteRoot": "/usr/src/app",
                "preLaunchTask": "start_node_compose"
            }
            // {
            //     "type": "node",
            //     "request": "launch",
            //     "name": "Launch Program",
            //     "program": "${workspaceRoot}/index.js"
            // }
        ]
    }
    

    As you can see I commented the local launch and made this the first one so it is run on F5. Next we need to define a start_node_compose task

    tasks.json

    {
        "version": "0.1.0",
        "command": "myCommand",
        "isShellCommand": false,
        "args": [],
        "showOutput": "always",
        "tasks": [
            {
                "taskName": "start_node_compose",
                "showOutput": "always",
                "isBuildCommand": true,
                "command": "/bin/bash",
                "args": [
                    "-c",
                    "docker-compose -f docker-compose.yml -f docker-compose.debug.yml up -d && sleep 10"
                ]
            }
        ]
    }
    

    Then when you run the command using F5 you will be able to hit the breakpoint

    0 讨论(0)
  • 2021-01-13 19:08

    I had the same issue. Using --inspect=0.0.0.0:9229 solved it. I recommend you use --inspect-brk too, to have the node process wait for the debugger to attach.

    0 讨论(0)
提交回复
热议问题