Skip to main content

How DevPod Builds Workspaces

Devpod provides the ability to build workspaces by taking a devcontainer.json and a git repository to compile an OCI compliant image with everything you need to develop against using local tools.

DevPod Architecture
DevPod - Container Diagram

It does this by parsing the devcontainer.json, extracting the "features" and appending them as build stages to the base Dockerfile. The container is then built, depending on the driver this could be docker, buildkit or kaniko and deployed with the configuration defined by your context. Optionally once the container is built, it can be pushed to a registry to cache for other developers or in case you rebuild your workspace later. See #tutorials/reduce-build-times.