1 line
83 KiB
JSON
1 line
83 KiB
JSON
{"$schema":"http://json-schema.org/draft-07/schema#","description":"Defines a dev container","allowComments":true,"allowTrailingCommas":false,"oneOf":[{"type":"object","properties":{"build":{"type":"object","description":"Docker build-related options.","properties":{"dockerfile":{"type":"string","description":"The location of the Dockerfile that defines the contents of the container. The path is relative to the folder containing the `devcontainer.json` file."},"context":{"type":"string","description":"The location of the context folder for building the Docker image. The path is relative to the folder containing the `devcontainer.json` file."},"target":{"type":"string","description":"Target stage in a multi-stage build."},"args":{"type":"object","additionalProperties":{"type":["string"]},"description":"Build arguments."},"cacheFrom":{"type":["string","array"],"description":"The image to consider as a cache. Use an array to specify multiple images.","items":{"type":"string"}}},"required":["dockerfile"],"additionalProperties":false},"appPort":{"type":["integer","string","array"],"description":"Application ports that are exposed by the container. This can be a single port or an array of ports. Each port can be a number or a string. A number is mapped to the same port on the host. A string is passed to Docker unchanged and can be used to map ports differently, e.g. \"8000:8010\".","items":{"type":["integer","string"]}},"runArgs":{"type":"array","description":"The arguments required when starting in the container.","items":{"type":"string"}},"shutdownAction":{"type":"string","enum":["none","stopContainer"],"description":"Action to take when the VS Code window is closed. The default is to stop the container."},"overrideCommand":{"type":"boolean","description":"Whether to overwrite the command specified in the image. The default is true."},"workspaceFolder":{"type":"string","description":"The path of the workspace folder inside the container."},"workspaceMount":{"type":"string","description":"The --mount parameter for docker run. The default is to mount the project folder at /workspaces/$project."},"name":{"type":"string","description":"A name for the dev container displayed in the UI."},"extensions":{"type":"array","description":"An array of extensions that should be installed into the container.","items":{"type":"string","pattern":"^([a-z0-9A-Z][a-z0-9A-Z-]*)\\.([a-z0-9A-Z][a-z0-9A-Z-]*)((@(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)|@prerelease)?$","errorMessage":"Expected format: '${publisher}.${name}' or '${publisher}.${name}@${version}'. Example: 'ms-dotnettools.csharp'."}},"settings":{"$ref":"vscode://schemas/settings/machine","description":"Machine specific settings that should be copied into the container. These are only copied when connecting to the container for the first time, rebuilding the container then triggers it again."},"features":{"type":"object","description":"Features to add to the dev container.","additionalProperties":true},"forwardPorts":{"type":"array","description":"Ports that are forwarded from the container to the local machine. Can be an integer port number, or a string of the format \"host:port_number\".","items":{"oneOf":[{"type":"integer","maximum":65535,"minimum":0},{"type":"string","pattern":"^([a-z0-9-]+):(\\d{1,5})$"}]}},"portsAttributes":{"type":"object","patternProperties":{"(^\\d+(-\\d+)?$)|(.+)":{"type":"object","description":"A port, range of ports (ex. \"40000-55000\"), or regular expression (ex. \".+\\\\/server.js\"). For a port number or range, the attributes will apply to that port number or range of port numbers. Attributes which use a regular expression will apply to ports whose associated process command line matches the expression.","properties":{"onAutoForward":{"type":"string","enum":["notify","openBrowser","openBrowserOnce","openPreview","silent","ignore"],"enumDescriptions":["Shows a notification when a port is automatically forwa
|