// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at: // https://github.com/microsoft/vscode-dev-containers/tree/v0.245.0/containers/ubuntu { "name": "beteran-protobuf", "build": { "dockerfile": "Dockerfile", // Update 'VARIANT' to pick an Ubuntu version: jammy / ubuntu-22.04, focal / ubuntu-20.04, bionic /ubuntu-18.04 // Use ubuntu-22.04 or ubuntu-18.04 on local arm64/Apple Silicon. "args": { "VARIANT": "ubuntu-22.04" } }, // Use this environment variable if you need to bind mount your local source code into a new container. "remoteEnv": { "LOCAL_WORKSPACE_FOLDER": "${localWorkspaceFolder}", "PROTOBUF_VERSION": "21.5" }, // Configure tool-specific properties. "customizations": { // Configure properties specific to VS Code. "vscode": { // Set *default* container specific settings.json values on container create. "settings": { "lldb.verboseLogging": true, "lldb.executable": "/usr/bin/lldb", "search.exclude": { "**/target": true }, // VS Code don't watch files under ./target "files.watcherExclude": { "**/.git/objects/**": true, "**/.git/subtree-cache/**": true, "**/target/**": true }, "rust-analyzer.checkOnSave.command": "clippy", "protoc": { "options": [ "--proto_path=/usr/local/include/protobuf" ] }, "editor.tabSize": 2, "editor.insertSpaces": true, "editor.formatOnSave": true }, // Add the IDs of extensions you want installed when the container is created. "extensions": [ "dbaeumer.vscode-eslint", "donjayamanne.githistory", "eamodio.gitlens", "mhutchie.git-graph", "ms-azuretools.vscode-docker", "mutantdino.resourcemonitor", "rust-lang.rust-analyzer", "serayuzgur.crates", "tamasfe.even-better-toml", "vadimcn.vscode-lldb", "zxh404.vscode-proto3" ] } }, // Use 'forwardPorts' to make a list of ports inside the container available locally. // "forwardPorts": [], // Use 'postCreateCommand' to run commands after the container is created. // "postCreateCommand": "uname -a", "postCreateCommand": "bash ./.devcontainer/scripts/postCreateCommand.sh", // Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. "remoteUser": "vscode", "features": { "node": "lts", "rust": "latest" } }