coder/examples/templates/docker
Mathias Fredriksson 0178bfe134
fix(examples): copy /etc/skel on init in docker template (#12913)
Fixes #10209
2024-04-09 14:54:17 +03:00
..
build chore(examples): Add `login_before_ready` and `startup_script_timeout` (#5880) 2023-01-27 21:01:48 +00:00
README.md docs: fix example template README 404s and semantics (#11903) 2024-01-29 21:34:12 +00:00
main.tf fix(examples): copy /etc/skel on init in docker template (#12913) 2024-04-09 14:54:17 +03:00

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
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.