-
Notifications
You must be signed in to change notification settings - Fork 0
/
devcontainer.json
70 lines (70 loc) · 2.73 KB
/
devcontainer.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
{
"name": "${localWorkspaceFolderBasename}",
"build": {
"context": "${localWorkspaceFolder}",
"dockerfile": "${localWorkspaceFolder}/Dockerfile",
"cacheFrom": "andrejorsula/isaac_sim_rs"
},
"workspaceFolder": "/root/ws",
"workspaceMount": "type=bind,source=${localWorkspaceFolder},target=/root/ws",
"runArgs": [
// Network mode
"--network=host",
"--ipc=host",
// NVIDIA GPU
"--gpus=all",
// Other GPUs
"--device=/dev/dri:/dev/dri",
"--group-add=video"
],
"mounts": [
// Local time
"type=bind,source=/etc/localtime,target=/etc/localtime,readonly",
// Input devices
"type=bind,source=/dev/input,target=/dev/input",
// GUI (X11)
"type=bind,source=/tmp/.X11-unix,target=/tmp/.X11-unix",
"type=bind,source=${localEnv:TMPDIR:/tmp}/xauth_docker_vsc_${localWorkspaceFolderBasename},target=${localEnv:TMPDIR:/tmp}/xauth_docker_vsc_${localWorkspaceFolderBasename}",
// Isaac Sim
"type=bind,source=${localEnv:HOME}/.nvidia-omniverse/docker/cache/computecache,target=/root/.nv/ComputeCache",
"type=bind,source=${localEnv:HOME}/.nvidia-omniverse/docker/cache/glcache,target=/root/.cache/nvidia/GLCache",
"type=bind,source=${localEnv:HOME}/.nvidia-omniverse/docker/cache/kit,target=/root/isaac_sim/cache/Kit",
"type=bind,source=${localEnv:HOME}/.nvidia-omniverse/docker/cache/ov,target=/root/.cache/ov",
"type=bind,source=${localEnv:HOME}/.nvidia-omniverse/docker/cache/pip,target=/root/.cache/pip",
"type=bind,source=${localEnv:HOME}/.nvidia-omniverse/docker/data,target=/root/.local/share/ov/data",
"type=bind,source=${localEnv:HOME}/.nvidia-omniverse/docker/documents,target=/root/Documents",
"type=bind,source=${localEnv:HOME}/.nvidia-omniverse/docker/logs,target=/root/.nvidia-omniverse/logs"
],
"containerEnv": {
// GUI (X11)
"DISPLAY": "${localEnv:DISPLAY}",
"XAUTHORITY": "${localEnv:TMPDIR:/tmp}/xauth_docker_vsc_${localWorkspaceFolderBasename}",
// NVIDIA GPU
"NVIDIA_VISIBLE_DEVICES": "all",
"NVIDIA_DRIVER_CAPABILITIES": "all"
},
"initializeCommand": "XAUTH=\"${localEnv:TMPDIR:/tmp}/xauth_docker_vsc_${localWorkspaceFolderBasename}\"; touch \"${XAUTH}\"; chmod a+r \"${XAUTH}\"; XAUTH_LIST=$(xauth nlist \"${localEnv:DISPLAY}\"); if [ -n \"${XAUTH_LIST}\" ]; then echo \"${XAUTH_LIST}\" | sed -e 's/^..../ffff/' | xauth -f \"${XAUTH}\" nmerge -; fi",
"customizations": {
"vscode": {
"extensions": [
// Rust
"rust-lang.rust-analyzer",
"serayuzgur.crates",
"vadimcn.vscode-lldb",
// Python
"ms-python.black-formatter",
"ms-python.isort",
"ms-python.python",
"ms-python.vscode-pylance",
// Toml
"tamasfe.even-better-toml",
// Yaml
"redhat.vscode-yaml",
// Utils
"christian-kohler.path-intellisense",
// Miscellaneous
"GitHub.copilot"
]
}
}
}