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, to 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.
The Development Container Specification seeks to find ways to enrich existing formats with common
development specific settings, tools, and configuration while still providing a simplified,
un-orchestrated single container option – so that they can be used as coding environments or for
continuous integration and testing. Beyond the specification's core metadata, the spec also enables
developers to quickly share and reuse container setup steps through Features and Templates.