mirror of https://github.com/coder/coder.git
0178bfe134
Fixes #10209 |
||
---|---|---|
.. | ||
build | ||
README.md | ||
main.tf |
README.md
display_name | description | icon | maintainer_github | verified | tags | ||
---|---|---|---|---|---|---|---|
Docker Containers | Provision Docker containers as Coder workspaces | ../../../site/static/icon/docker.png | coder | true |
|
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.