A collection of Development Container definitions for creating consistent, reproducible development environments. This repository provides pre-configured devcontainer images to streamline setting up development environments in tools like Visual Studio Code, GitHub Codespaces, or other container-based IDEs.
A development container is a running Docker container with a well-defined tool/runtime stack and its prerequisites. It allows you to use a container as a full-featured development environment which can be used to run an application, to separate tools, libraries, or runtimes needed for working with a codebase, and to aid in continuous integration and testing.
This repository contains a set of dev container images which are Docker images built with dev container features.
src- Contains reusable dev container images.scripts- Contains utility scripts, includinggenerate-docs.jsfor updating documentation links in this README.
Below is a list of available Dev Container definitions in this repository:
| Name | Description | Base Image | Documentation |
|---|---|---|---|
python |
Python 3.x environment with common tools (e.g., pip, pylint) | ghcr.io/jmcombs/devcontainer:python |
Python Docs |
node |
Node.js environment with npm/yarn and VS Code extensions | ghcr.io/jmcombs/devcontainer:node |
Node Docs |
base-ubuntu |
Base Ubuntu 22.04 image with essential tools | ghcr.io/jmcombs/devcontainer:base-ubuntu |
Base Ubuntu Docs |
To use these dev containers in Visual Studio Code or GitHub Codespaces:
- Open your project in VS Code or Codespaces.
- Select the dev container: Use the Command Palette (
Ctrl+Shift+PorCmd+Shift+Pon macOS) and chooseDev Containers: Reopen in Container. - Choose a container definition: Select one of the available dev containers from this repository (e.g.,
pythonornode). - Start coding: Your environment will be set up with all the necessary tools and extensions.
For more detailed instructions, refer to the Dev Containers documentation.