Files
coder/examples/templates/docker
Asher d8ddce8628 chore: use latest code-server in examples (#14030)
Instead, leave a comment describing how to pin the version.  This negates
the need to continually update the version in the examples.
2024-07-26 21:53:17 +00:00
..

display_name, description, icon, maintainer_github, verified, tags
display_name description icon maintainer_github verified tags
Docker Containers Provision Docker containers as Coder workspaces ../../../site/static/icon/docker.png coder true
docker
container

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.