Debugging Docker containers
Sometimes, you have code running in a container that is not working. In that case, it's useful to be able to debug the application as it's running inside of the container. VS Code provides the correct Docker configuration to do this.
Build the container with the "debug.docker-compose.yml" file
Add a launch configuration for Docker
Attach the debugger to the running container
Set a breakpoint in the "routes/index.js" file
Visit the app in the browser, change the color and click the button
See the debugger break at the breakpoint
Open the Command Palette(Cmd/Ctrl + Shift + P)
Select "Docker: Compose Up"

Select the "start" project from the prompt

Select the "debug.docker-compose.yml" file from the prompt

Open the Debug Explorer view (Cmd/Ctrl + Shift + D)
Open the dropdown list at the top and select "Add Config (start)"

Select "Docker: Node.js" from the prompt

Take the default Docker Remote Route prompt

VS Code will add a ".vscode" folder to the "start" project. In that folder will be a file called "launch.config"

Open the Debug Explorer View
Make sure "Docker: Attach to Node" is selected and press the green arrow

VS Code attaches the debugger
Open the "routes/index.js" file in the "start" project
Add a breakpoint to line 12

View the app in the browser running on port 3000

Change the color and click the "Go" button
VS Code will break on line 12 of the "index.js" file inside of the Docker container

Last updated
Was this helpful?