Download and Install Operately

This guide walks you through downloading and installing Operately on your own infrastructure.

Pre-requisites:

Installation steps:

Pre-requisites#

Select a server#

Choose a machine to host Operately. For cloud hosting, we recommend DigitalOcean, Linode, or Hetzner.

Minimum requirements:

  • 2GB RAM and 1 CPU (suitable for teams up to 30 people)
  • 8GB RAM and 4 CPUs (recommended for larger teams)

Configure a domain for your server#

Point a domain to your server. You can use a subdomain (e.g. operately.example.com) or a root domain (e.g. example.com). Configure the DNS records to point to your server’s IP address. Make sure it’s a direct DNS pointer, not a proxy (e.g. avoid Cloudflare proxy).

Install Docker and Docker Compose#

Operately runs as a set of Docker containers orchestrated by Docker Compose. Install Docker and Docker Compose for your operating system:

Set up a mail server#

Operately uses SendGrid to send emails. Set up a SendGrid account and create an API key by following the instructions in the SendGrid documentation.

Installation steps#

Download the latest release of Operately#

Download and extract the latest Operately release:

wget -q https://github.com/operately/operately/releases/latest/download/operately-single-host.tar.gz
tar -xf operately-single-host.tar.gz
cd operately

Run the installation script#

Run the installation script to configure Operately:

./install.sh

The script will

  • Build the Docker images
  • Configure the environment
  • Set up a Let’s encrypt certificate
  • Prompt you for the following information:
    • Domain: The domain you configured for your server (e.g. operately.example.com)
    • Admin email: The email address for receiving Let’s Encrypt notifications
    • SendGrid API key: The API key you created in the SendGrid dashboard

Launch Operately#

Start Operately using Docker Compose:

docker compose up --wait --detach

Operately should now be running on your server. You can access it by navigating to your configured domain (e.g. https://operately.example.com).