| display_name | Docker Containers | ||
|---|---|---|---|
| description | Provision Docker containers as Coder workspaces | ||
| icon | ../../../site/static/icon/docker.png | ||
| maintainer_github | coder | ||
| verified | true | ||
| tags |
|
Remote Development on Docker Containers
Provision Docker containers as Coder workspaces with this example template.
Prerequisites
Infrastructure
The VM you run Coder on must have a running Docker socket and the coder user must be added to the Docker group:
# Add coder user to Docker group sudo adduser coder docker # Restart Coder server sudo systemctl restart coder # Test Docker sudo -u coder docker ps
Architecture
This template provisions the following resources:
- Docker image (built by Docker socket and kept locally)
- Docker container pod (ephemeral)
- Docker volume (persistent on
/home/coder)
This means, when the workspace restarts, any tools or files outside of the home directory are not persisted. To pre-bake tools into the workspace (e.g. python3), modify the container image. Alternatively, individual developers can personalize their workspaces with dotfiles.
Note This template is designed to be a starting point! Edit the Terraform to extend the template to support your use case.
Editing the image
Edit the Dockerfile and run coder templates push to update workspaces.