Skip to main content

Templates

Templates are written in Terraform and define the underlying infrastructure that all Coder workspaces run on.

The template builder is the recommended way to create templates. It guides you through selecting base infrastructure, adding modules, and configuring your template without writing Terraform.

Learn the concepts

While templates are written in standard Terraform, it's important to learn the Coder-specific concepts behind templates. The best way to learn the concepts is by creating a basic template from scratch. If you are unfamiliar with Terraform, see Hashicorp's Tutorials for common cloud providers.

Create a template

The fastest way to get started is with the template builder, which composes a working template from a base infrastructure template and optional registry modules. Starter templates for popular platforms (AWS, Kubernetes, Docker, and others) are available as base templates in the builder, or through the CLI.

Extending templates

It's often necessary to extend the template to make it generally useful to end users. Common modifications are:

Learn more about the various ways you can extend your templates.

Best Practices

We recommend starting with a universal template that can be used for basic tasks. As your Coder deployment grows, you can create more templates to meet the needs of different teams.