Node:Docker
Node와 Docker의 디버깅 방법.
Run docker
아래와 같이 Docker를 실행한다.
#!/usr/bin/env bash
PUBLISH_PORT=3000
INSPECT_PORT=9229
echo "Publish web: http://localhost:$PUBLISH_PORT/"
echo "Inspect port: $INSPECT_PORT"
docker run --rm -it \
-v $PWD:/cycloud-admin \
-w /cycloud-admin \
-p $PUBLISH_PORT:3000 \
-p $INSPECT_PORT:9229 \
node:8.11 \
node --inspect=0.0.0.0:9229 app.js
CODE=$?
echo "Done ($CODE)."
IDE
Visual Studio Code에서 디버깅 할 경우 .vscode/launch.json
파일을 아래와 같이 추가한다.
{
// IntelliSense를 사용하여 가능한 특성에 대해 알아보세요.
// 기존 특성에 대한 설명을 보려면 가리킵니다.
// 자세한 내용을 보려면 https://go.microsoft.com/fwlink/?linkid=830387을(를) 방문하세요.
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "attach",
"name": "Docker: Attach to Node",
"port": 9229,
"address": "localhost",
"localRoot": "${workspaceFolder}",
"remoteRoot": "/cycloud-admin",
"protocol": "inspector"
}
]
}