54ed5c6a82
Makes it easier to work on an individual part in isolation. Also change the vscode devconsole visualiser to one that works with includes
46 lines
1.6 KiB
JSON
46 lines
1.6 KiB
JSON
{
|
|
"name": "ROS 2 Development Container",
|
|
"privileged": true,
|
|
"remoteUser": "matt",
|
|
"initializeCommand": "stat -c %g /var/run/docker.sock > .devcontainer/.docker_gid",
|
|
"build": {
|
|
"dockerfile": "Dockerfile",
|
|
"args": {
|
|
"USERNAME": "matt"
|
|
}
|
|
},
|
|
"workspaceFolder": "/home/ws",
|
|
"workspaceMount": "source=${localWorkspaceFolder},target=/home/ws,type=bind",
|
|
"customizations": {
|
|
"vscode": {
|
|
"extensions":[
|
|
"ms-vscode.cpptools",
|
|
"ms-vscode.cpptools-themes",
|
|
"twxs.cmake",
|
|
"donjayamanne.python-extension-pack",
|
|
"eamodio.gitlens",
|
|
"ms-iot.vscode-ros",
|
|
"anthropic.claude-code",
|
|
"morningfrog.urdf-visualizer"
|
|
]
|
|
}
|
|
},
|
|
"containerEnv": {
|
|
"DISPLAY": "unix:0",
|
|
"ROS_AUTOMATIC_DISCOVERY_RANGE": "LOCALHOST",
|
|
"ROS_DOMAIN_ID": "42"
|
|
},
|
|
"runArgs": [
|
|
"--net=host",
|
|
"--pid=host",
|
|
"--ipc=host",
|
|
"-e", "DISPLAY=${env:DISPLAY}"
|
|
],
|
|
"mounts": [
|
|
"source=/tmp/.X11-unix,target=/tmp/.X11-unix,type=bind,consistency=cached",
|
|
"source=/dev/dri,target=/dev/dri,type=bind,consistency=cached",
|
|
"source=${localEnv:HOME}/.gitconfig,target=/home/matt/.gitconfig,type=bind,consistency=cached,readonly",
|
|
"source=/var/run/docker.sock,target=/var/run/docker.sock,type=bind"
|
|
],
|
|
"postCreateCommand": "sudo rosdep update && sudo rosdep install --from-paths lidar/src robot/src --ignore-src -y && sudo chown -R $(whoami) /home/ws/ && npm --prefix /home/ws/webui/frontend install"
|
|
} |