diff --git a/Gemfile.lock b/Gemfile.lock index 248f6025..0b638f27 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -262,7 +262,7 @@ DEPENDENCIES webrick (~> 1.7) RUBY VERSION - ruby 3.2.2p53 + ruby 3.2.3p157 BUNDLED WITH 2.4.10 diff --git a/_includes/topnav.html b/_includes/topnav.html index abff8839..de15655c 100644 --- a/_includes/topnav.html +++ b/_includes/topnav.html @@ -35,9 +35,12 @@

Development Containers

- + + diff --git a/terms.md b/terms.md new file mode 100644 index 00000000..ff89e557 --- /dev/null +++ b/terms.md @@ -0,0 +1,73 @@ +--- +title: Common Terms +layout: singlePage +sectionid: terms +--- + +## Common Terms + +This page defines common terms used throughout the Development Container Specification and related documentation. + +### Base Image + +A container image that serves as the starting point for creating a development container. Base images typically contain an operating system and may include development tools, runtimes, and libraries that provide a foundation for development. + +### Container Image + +A lightweight, standalone, executable package that includes everything needed to run an application: code, runtime, system tools, system libraries, and settings. Container images are built from Dockerfiles or pulled from container registries. + +### Dev Container + +Short for "development container." A containerized development environment that includes all the tools, libraries, and dependencies needed for developing a particular project or technology stack. + +### Development Container + +A full-featured coding environment that runs inside a container. It allows you to use a container as your primary development environment, separating your development tools from your local machine while providing a consistent, reproducible environment. + +### Development Container Specification + +An open specification that defines metadata formats and behaviors for creating reproducible, tool-agnostic containerized development environments. Often abbreviated as "dev container spec." + +### devcontainer.json + +A JSON with Comments (jsonc) metadata file that contains configuration settings required to create and configure a development container. This file tells tools and services how to access or create a dev container with a well-defined tool and runtime stack. + +### Dockerfile + +A text file that contains a series of instructions used to build a container image. Each instruction in a Dockerfile creates a layer in the image, defining how the container should be constructed. + +### Docker Compose + +A tool for defining and running multi-container Docker applications using YAML configuration files. In the context of dev containers, Docker Compose can be used to orchestrate complex development environments with multiple services. + +### Feature + +A self-contained, shareable unit of installation code and development container configuration. Features allow you to quickly add tooling, runtimes, or libraries to your development container. They are applied during the container build process and can be reused across different projects. + +### Lifecycle Scripts + +Commands that run at different points in a development container's lifecycle, such as `onCreateCommand`, `postCreateCommand`, `postStartCommand`, and `postAttachCommand`. These scripts allow you to customize the container setup and configuration process. + +### Metadata + +Configuration information that describes how to create, configure, and use a development container. This metadata can be stored in `devcontainer.json` files, container image labels, or embedded in other formats while maintaining a common object model. + +### OCI Registry + +An Open Container Initiative (OCI) compliant registry that stores and distributes container images and artifacts. Examples include Docker Hub, GitHub Container Registry, and Azure Container Registry. Dev Container Features and Templates can be published to OCI registries for sharing and distribution. + +### Remote Development + +The practice of developing software using resources (compute, storage, etc.) that are located remotely from the developer's local machine. Dev containers enable remote development by providing consistent environments that can run locally, in the cloud, or on remote machines. + +### Template + +A pre-configured development container setup that provides a starting point for new projects. Templates include a `devcontainer.json` file and may include additional configuration files, sample code, and documentation to help developers quickly get started with a particular technology stack. + +### Workspace + +The directory or folder that contains your project's source code and is mounted into the development container. The workspace folder is typically where you'll do your development work within the container. + +### Workspace Folder + +The default path inside the development container where dev container supporting tools should open when connecting to the container. This is typically where your source code is mounted and where development activities take place. \ No newline at end of file