Refer to the full Dev Container specification here for more information on the below options.
The symbols in the first column indicate the support status:
- 🟢 Fully supported.
- 🟠 Partially supported.
- 🔴 Not currently supported.
The last column indicates any currently existing GitHub issue for tracking support for this feature. Feel free to create a new issue if you'd like Envbuilder to support a particular feature.
Status | Name | Description | Known Issues |
---|---|---|---|
General | |||
🔴 | name |
Human-friendly name for the dev container. | - |
🔴 | forwardPorts |
Port forwarding allows exposing container ports to the host, making services accessible. | #48 |
🔴 | portsAttributes |
Set port attributes for a host:port . |
- |
🔴 | otherPortsAttributes |
Other options for ports not configured using portsAttributes . |
- |
🟢 | containerEnv |
Environment variables to set inside the container. | - |
🟢 | remoteEnv |
Override environment variables for specific supporting services or tools, but not the container as a whole. | - |
🟢 | remoteUser |
Override the user that supporting tools run as inside the container without changing the user for the whole container. | - |
🟢 | containerUser |
Override the user for all operations run inside the container. | - |
🔴 | updateRemoteUserUID |
Update the devcontainer UID/GID to match the local user. | - |
🔴 | userEnvProbe |
Shell to use when probing for user environment variables. | - |
🔴 | overrideCommand |
Override the default sleep command to be run by supporting services. | - |
🔴 | shutdownAction |
Action to take when supporting tools are closed or shut down. | - |
🔴 | init |
Adds a tiny init process to the container. | #221 |
🔴 | privileged |
Whether the container should be run in privileged mode. | - |
🔴 | capAdd |
Capabilities to add to the container (for example, SYS_PTRACE ). |
- |
🔴 | securityOpt |
Security options to add to the container (for example, seccomp=unconfined ). |
- |
🔴 | mounts |
Add additional mounts to the container. | #220 |
🟢 | features |
Features to be added to the devcontainer. | - |
🔴 | overrideFeatureInstallOrder |
Override the order in which features should be installed. | #226 |
🔴 | customizations |
Product-specific properties, e.g., VS Code settings and extensions. | #43 |
Image/Dockerfile | |||
🟢 | image |
Name of an image to run. | - |
🟢 | build.dockerfile |
Path to a Dockerfile to build relative to devcontainer.json . |
- |
🟢 | build.context |
Path to the build context relative to devcontainer.json . |
- |
🟢 | build.args |
Build args to use when building the Dockerfile. | - |
🔴 | build.options |
Build options to pass to the Docker daemon. Envbuilder does not use a Docker daemon, so this is not relevant. | - |
🟢 | build.target |
Target to be passed when building the Dockerfile. | - |
🟢 | build.cacheFrom |
Images to use as caches when building the Dockerfile. | - |
🔴 | appPort |
Ports to be published locally when the container is running. | - |
🔴 | workspaceMount |
Overrides the default local mount point for the workspace when the container is created. | - |
🔴 | workspaceFolder |
Default path to open when connecting to the container. | - |
Docker Compose | |||
🔴 | dockerComposeFile |
Path to a Docker Compose file related to the devcontainer.json . |
#236 |
🔴 | service |
Name of the Docker Compose service to which supporting tools should connect. | #236 |
🔴 | runServices |
Docker Compose services to automatically start. | #236 |
Lifecycle scripts | |||
🔴 | initializeCommand |
Command to run on the host machine when creating the container. | #395 |
🟢 | onCreateCommand |
Command to run inside container after first start. | |
🟢 | updateContentCommand |
Command to run after onCreateCommand inside container. |
|
🟢 | postCreateCommand |
Command to run after updateContentCommand inside container. |
|
🟢 | postStartCommand |
Command to run each time the container is started. | |
🔴 | postAttachCommand |
Command to run each time a tool attaches to the container. | |
🔴 | waitFor |
Specify the lifecycle command tools should wait to complete before connecting. | |
Minimum Host Requirements | |||
🔴 | hostRequirements.cpus |
Minimum number of CPUs required. | - |
🔴 | hostRequirements.memory |
Minimum memory requirements. | - |
🔴 | hostRequirements.storage |
Minimum storage requirements. | - |
🔴 | hostRequirements.gpu |
Whether a GPU is required. | - |
Variable Substitution | |||
🟢 | ${localEnv:VARIABLE_NAME} |
Environment variable on the host machine. | - |
🟢 | ${containerEnv:VARIABLE_NAME} |
Existing environment variable inside the container. | - |
🟢 | ${localWorkspaceFolder} |
Path to the local workspace folder. | - |
🟢 | ${containerWorkspaceFolder} |
Path to the workspace folder inside the container. | - |
🟢 | ${localWorkspaceFolderBasename} |
Base name of localWorkspaceFolder . |
- |
🟢 | ${containerWorkspaceFolderBasename} |
Base name of containerWorkspaceFolder . |
- |
🔴 | ${devcontainerId} |
A stable unique identifier for the devcontainer. | - |