We’re excited for your contributions to the Dev Container Specification! This document outlines how you can get involved. We also welcome you to join our community Slack channel.
If you’d like to contribute a change or addition to the spec, you may follow the guidance below:
Here is a sample:
| Property | Type | Description |
|---|---|---|
image |
string | Required when using an image. The name of an image in a container registry (DockerHub, GitHub Container Registry, Azure Container Registry) that VS Code and other devcontainer.json supporting services / tools should use to create the dev container. |
Once there is discussion on your proposal, please also open and link a PR to update the devcontainer.json reference doc. When your proposal is merged, the docs will be kept up-to-date with the latest spec.
Tool-specific properties are contained in namespaces in the "customizations" property. For instance, VS Code specific properties are formated as:
// Configure tool-specific properties.
"customizations": {
// Configure properties specific to VS Code.
"vscode": {
// Set *default* container specific settings.json values on container create.
"settings": {},
// Additional VS Code specific properties...
}
},
You may propose adding a new namespace for a specific tool, and any properties specific to that tool.
When contributing an official doc or referencing dev containers in your projects, please consider the following guidelines:
devcontainer.json is a file type through backticksWe use the following labels in the spec repo:
proposal: Issues under discussion, still collecting feedback.finalization: Proposals we intend to make part of the spec.Milestones use a "month year" pattern (i.e. January 2022). If a finalized proposal is added to a milestone, it is intended to be merged during that milestone.
There are several additional options to engage with the dev container community, such as asking questions, providing feedback, or engaging on how your team may use or contribute to dev containers: