Skip to content

Instantly share code, notes, and snippets.

View bpmct's full-sized avatar
🥝

Ben Potter bpmct

🥝
View GitHub Profile

Coder Template Development Guide

This guide documents best practices and workflows for developing and iterating on Coder templates.

Understanding Templates

Coder templates are written in Terraform and define the infrastructure required for workspaces. These templates create VMs, containers, and other resources that developers use as their development environments.

Template Development Workflow

@bpmct
bpmct / coder_windows_build_guide_updated.md
Created March 15, 2025 17:57
Building Coder on Windows - Guide and Automation Script (with randomized workspace names)

Building Coder on Windows - Complete Guide

This guide documents the process of setting up a Windows workspace using Coder and building the Coder repository on it.

Prerequisites

  • Access to a Coder deployment (e.g., dev.coder.com)
  • coder CLI installed and authenticated

Step 1: Create a Windows Workspace

@bpmct
bpmct / coder_windows_build_guide.md
Created March 15, 2025 17:55
Building Coder on Windows - Guide and Automation Script

Building Coder on Windows - Complete Guide

This guide documents the process of setting up a Windows workspace using Coder and building the Coder repository on it.

Prerequisites

  • Access to a Coder deployment (e.g., dev.coder.com)
  • coder CLI installed and authenticated

Step 1: Create a Windows Workspace

Coder added jq to the base image to support mounting secrets from AWS Secrets Manager, or other Kubernetes secrets that are in JSON format. Example:

# Helm values.yaml
coder:
  command:
    - /bin/sh
    - -c     - CODER_PG_CONNECTION_URL=postgresql://coder:$(cat /mnt/postgres-pass/secret.json | jq -r .password)@coder-db.coder.svc.cluster.local:5432/coder /opt/coder server
  volumes:
 - name: "postgres-pass"
#!/bin/bash
# This has been tested on the aws-linux Coder template, which runs Ubuntu Focal
# Check if LXDE is installed
if ! dpkg -s lxde &> /dev/null; then
sudo apt-get update
DEBIAN_FRONTEND=noninteractive sudo apt-get install -y lxde
else
echo "LXDE is already installed."
@bpmct
bpmct / j
Created December 24, 2021 20:47
https://835d-107-77-230-58.ngrok.io/
https://bafd-107-77-230-58.ngrok.io