Skip to main content

How to quickly install a Temporal Cluster for testing and local development

Whenever you are developing Temporal Applications, you'll want to have a Temporal Cluster up and running. You can interact with a Cluster through Temporal Client APIs and tctl commands.

There are four ways to quickly install and run a Temporal Cluster:

  • Docker: Using Docker Compose makes it easy to develop your Temporal Application locally.
  • Gitpod: One-click deployments are available for Go and TypeScript.
  • Helm charts: Deploying a Cluster to Kubernetes is an easy way to test the system and develop Temporal Applications.
  • Render: Our temporalio/docker-compose experience has been translated to Render's Blueprint format for an alternative cloud connection.

We do not recommend using any of these methods in a full (production) environment.

Docker Compose

Use Docker Compose and Temporal Cluster Docker images to quickly install and run a Temporal Cluster locally while developing Workflows.

You must have Docker and Docker Compose installed.

Then clone the temporalio/docker-compose repository and run docker-compose up from the root of that repo:

git clone https://github.com/temporalio/docker-compose.git
cd docker-compose
docker-compose up

When the Temporal Cluster is running, the Temporal Web UI becomes available in your browser: localhost:8080

The preceding steps start and run a Temporal Cluster using a default configuration. To try other configurations (different dependencies and databases), or to try a custom Docker image, follow the temporalio/docker-compose README.

Gitpod

You can run a Temporal Cluster and develop Temporal Applications in your browser using Gitpod.

One-click deployments are available for the temporalio/samples-go repo and the temporalio/samples-typescript repo.

A one-click deployment starts a Temporal Cluster using a Temporal Cluster Docker image, starts a Worker Process, and starts one of the application's sample Workflows.

It can take up to a full minute for the one-click deployments to get fully up and running. When it is running, you can customize the application samples.

Helm charts

Use Temporal Helm charts to deploy the Temporal Server to a Kubernetes cluster.

Deploying the Temporal Cluster with Helm is not recommended for a production environment, but it is a great way to test the system while developing Workflows.

Render

temporal-render-simple translates our docker-compose to Render by using the Auto-Setup Docker image. We do not recommend using this technique for production because all four Temporal internal services (Frontend, Matching, History, and Worker) are run in one process, but the benefit is one-click deployments.

Deploy to Render