docs/src/dev-containers.md
Dev Containers provide a consistent, reproducible development environment by defining your project's dependencies, tools, and settings in a container configuration.
If your repository includes a .devcontainer/devcontainer.json file, Zed can open a project inside a development container.
PATH. Zed requires the docker command to be present. If you use Podman, you must alias it to docker, e.g. by using a symlink: sudo ln -s $(which podman) {some_known_path}/docker..devcontainer/devcontainer.json directory/file.When you open a project that contains the .devcontainer/devcontainer.json directory/file, Zed will display a prompt asking whether to open the project inside the dev container. Choosing "Open in Container" will:
If you dismiss the prompt or want to reopen the project inside a container later, you can use Zed's command palette to run the "Project: Open Remote" command and select the option to open the project in a dev container. Alternatively, you can reach for the Remote Projects modal (through the {#kb projects::OpenRemote} binding) and choose the "Connect Dev Container" option.
If you modify .devcontainer/devcontainer.json, Zed does not currently rebuild or reload the container automatically. After changing configuration:
docker kill <container>).Once connected, Zed operates inside the container environment for tasks, terminals, and language servers. Files are linked from your workspace into the container according to the dev container specification.
Note: This feature is still in development.
appPort field is supported. forwardPorts and other advanced port-forwarding features are not implemented.devcontainer.json do not trigger automatic rebuilds or reloads; containers must be manually restarted.