{ "name": "Docker in Docker", "build": { "dockerfile": "./Dockerfile", "context": "." }, "features": { "ghcr.io/devcontainers/features/common-utils:1": { "installZsh": "true", "upgradePackages": "false", "uid": "1000", "gid": "1000", "installOhMyZsh": "true", "nonFreePackages": "true" }, "ghcr.io/devcontainers/features/docker-from-docker:1": { "version": "latest", "enableNonRootDocker": "true", "moby": "true" }, "ghcr.io/devcontainers/features/git:1": {}, "ghcr.io/devcontainers/features/go:1": {} }, // Configure tool-specific properties. "customizations": { // Configure properties specific to VS Code. "vscode": { // Set *default* container specific settings.json values on container create. "settings": { "go.toolsManagement.checkForUpdates": "local", "go.useLanguageServer": true, "go.gopath": "~/go", "[go]": { "editor.formatOnSave": true, "editor.codeActionsOnSave": { "source.organizeImports": true } }, "go.lintTool": "golangci-lint", "gopls": { "formatting.gofumpt": true, "usePlaceholders": false // add parameter placeholders when completing a function }, "files.eol": "\n" }, // Add the IDs of extensions you want installed when the container is created. "extensions": [ "golang.Go" ] } } // TODO: make this work. // "postStartCommand": "echo \"alias gr=\\\"go run /workspaces/lazydocker/main.go\\\"\" >> ~/.zhsrc" }