Development Containers
Development Containers (or Dev Containers) allow you to use a container as a full-featured development environment. It can be used to run an application, separate tools, libraries, or runtimes needed for working with a codebase, and to aid in continuous integration and testing. Dev containers can be run locally or remotely, in a private or public cloud, in a variety of supporting tools and editors.
Development Containers
“A Development Container (or Dev Container for short) allows you to use a container as a full-featured development environment. It can be used to run an application, separate tools, libraries, or runtimes needed for working with a codebase, and to aid in continuous integration and testing. Dev containers can be run locally or remotely, in a private or public cloud, in a variety of supporting tools and editors.” - containers.dev
Gitpod offers seamless support for Dev Containers, allowing you to standardize and automate your development environment across teams and projects. By defining your environment in a devcontainer.json file, Gitpod ensures that everyone on your team works with the same configuration, regardless of their local setup.
Configuration Locations
Gitpod will automatically detect your Dev Container configuration in standard locations:
.devcontainer/devcontainer.json
.devcontainer.json
You can also specify custom paths when configuring Projects through the Gitpod UI.
Integration with Automations
Building on Dev Containers, Gitpod adds a powerful framework for running Automations in your development environments. While Dev Containers define your base environment, we recommend using Automations instead of Dev Container lifecycle commands for setup tasks and workflows.
Automations allow you to set up self-service actions like seeding databases, automating testing, managing external infrastructure lifecycle, or launching AI assistants securely within your development environment.
Example Dev Container
Was this page helpful?