This is the repository for the Container Tools for Visual Studio Code extension.
- Container Tools for Visual Studio Code -- the VS Code extension for building, managing, and deploying containerized applications.
- Docker Extension Pack -- a thin extension pack that installs Container Tools, so existing users of the former "Docker" extension are migrated forward.
These libraries are published to npm under the @microsoft scope and are consumed by the Container Tools extension (built directly from source in this monorepo):
@microsoft/vscode-container-client-- extensibility model for implementing container runtime providers (shared by VS and VS Code).@microsoft/vscode-docker-registries-- extensibility model for contributing registry providers to the Container Tools extension.@microsoft/vscode-processutils-- library support for building command lines and running external processes.@microsoft/vscode-inproc-mcp-- library support for building in-process MCP servers.@microsoft/compose-language-service-- the Docker Compose language server, published to npm and consumed (built from source) by the Container Tools extension.
There are several ways you can contribute to this extension.
We are open to all ideas and we want to get rid of bugs! Use the Issues section to either report a new issue, provide your ideas or contribute to existing threads.
To contribute bug fixes, features, or design changes:
- Clone the repository locally and open in VS Code.
- Install ESLint, TypeScript 7 and esbuild Problem Matchers for Visual Studio Code.
- Open the terminal (Ctrl+ ` by default) and run
pnpm install. - To build, open the Command Palette (F1 by default) and type in
Tasks: Run Build Task. - Debug: press F5 (by default) to start debugging the extension.
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
VS Code collects usage data and sends it to Microsoft to help improve our products and services. Read our privacy statement to learn more. If you don't wish to send usage data to Microsoft, you can set the telemetry.telemetryLevel setting to off. Learn more in our FAQ.