The easiest way to install Coder is to use our install script for Linux and macOS.

To install, run:

curl -L | sh

You can preview what occurs during the install process:

curl -L | sh -s -- --dry-run

You can modify the installation process by including flags. Run the help command for reference:

curl -L | sh -s -- --help

System packages

Coder publishes the following system packages in GitHub releases:

  • .deb (Debian, Ubuntu)
  • .rpm (Fedora, CentOS, RHEL, SUSE)
  • .apk (Alpine)

Once installed, you can run Coder as a system service:

 # Set up an external access URL or enable CODER_TUNNEL
sudo vim /etc/coder.d/coder.env
# Use systemd to start Coder now and on reboot
sudo systemctl enable --now coder
# View the logs to ensure a successful start
journalctl -u coder.service -b


Before proceeding, please ensure that you have both Docker and the latest version of Coder installed.

See our docker-compose file for additional information.

  1. Clone the coder repository:

    git clone
  2. Navigate into the coder folder. Coder requires a non-localhost access URL for non-Docker-based examples; if you have a public IP or a domain/reverse proxy, you can provide this value before running docker-compose up to start the service:

    cd coder
    docker-compose up

    Otherwise, you can start the service:

    cd coder
    docker-compose up

    Alternatively, if you would like to start a temporary deployment:

    docker run --rm -it \
    -e CODER_DEV_MODE=true \
    -v /var/run/docker.sock:/var/run/docker.sock \
  3. Follow the on-screen instructions to create your first template and workspace


We publish self-contained .zip and .tar.gz archives in GitHub releases. The archives bundle coder binary.

  1. Download the release archive appropriate for your operating system

  2. Unzip the folder you just downloaded, and move the coder executable to a location that's on your PATH

    # ex. MacOS and Linux
    mv coder /usr/local/bin

    Windows users: see this guide for adding folders to PATH.

  3. Start a Coder server

    # Automatically sets up an external access URL on *
    coder server --tunnel
    # Requires a PostgreSQL instance and external access URL
    coder server --postgres-url <url> --access-url <url>

Next steps

Once you've installed and started Coder, see the quickstart for instructions on creating your first template and workspace.

See an opportunity to improve our docs? Make an edit.