Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ test-results
.docusaurus
.cache-loader
temp/
.claude/*

# Misc
.DS_Store
Expand Down
45 changes: 30 additions & 15 deletions docs/production-deployment/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
id: index
title: Temporal Platform production deployments
sidebar_label: Production deployments
description: Elevate your durable application to production with ease by deploying your code on your infrastructure, using Temporal Cloud for a fully-managed service or self-hosting it.
description:
Elevate your durable application to production with ease by deploying your code on your infrastructure, using Temporal
Cloud for a fully-managed service or self-hosting it.
slug: /production-deployment
toc_max_heading_level: 4
keywords:
Expand All @@ -14,35 +16,48 @@ tags:

import { CaptionedImage } from '@site/src/components';

**Ready to elevate your durable application into production?**
To take your application to production, you'll need to deploy the following components:

To take your application to production, you deploy your application code, including your Workflows, Activities, and Workers, on your infrastructure using your existing build, test and deploy tools.
- Your application code, including your Workflows, Activities, and Workers, on your infrastructure using your existing
build, test and deploy tools.

Then you need a production-ready Temporal Service to coordinate the execution of your Workflows and Activities.
- A production-ready Temporal Service to coordinate the execution of your Workflows and Activities.
- You can use Temporal Cloud, a fully managed platform, or you can self-host the service.

You can use Temporal Cloud, a fully-managed platform, or you can self-host the service.
:::tip Do you need a production Temporal Service?

If you're still developing and testing your application locally, you may not need a production Temporal Service. Use the
[Temporal CLI development server](/cli/server#start-dev) — a single binary with no external dependencies:

`temporal server start-dev`

This starts a complete Temporal Service with Web UI on your local machine. We recommend this for local development
regardless of whether you plan to use Temporal Cloud or self-host in production. See the
[Temporal CLI server](/cli/server) page for configuration options.

:::

## Use Temporal Cloud

You can let us handle the operations of running the Temporal Service, and focus on your application.
Follow the [Temporal Cloud guide](/cloud) to get started.
You can let us handle the operations of running the Temporal Service, and focus on your application. Follow the
[Temporal Cloud guide](/cloud) to get started.

<CaptionedImage
src="/diagrams/basic-platform-topology-cloud.svg"
title="Connect your application instances to Temporal Cloud"
src="/diagrams/basic-platform-topology-cloud.svg"
title="Connect your application instances to Temporal Cloud"
/>

## Run a Self-hosted Temporal Service

Alternatively, you can run your own production level Temporal Service to orchestrate your durable applications.
Follow the [Self-hosted guide](/self-hosted-guide) to get started.
Alternatively, you can run your own production level Temporal Service to orchestrate your durable applications. Follow
the [Self-hosted guide](/self-hosted-guide) to get started.

<CaptionedImage
src="/diagrams/basic-platform-topology-self-hosted.svg"
title="Connect your application instances to your self-hosted Temporal Service"
src="/diagrams/basic-platform-topology-self-hosted.svg"
title="Connect your application instances to your self-hosted Temporal Service"
/>

## Worker deployments

Whether you're hosting with Temporal Cloud or on your own, you have control over where to run and scale your Workers.
We provide guidance on [Worker Deployments](/production-deployment/worker-deployments).
Whether you're hosting with Temporal Cloud or on your own, you have control over where to run and scale your Workers. We
provide guidance on [Worker Deployments](/production-deployment/worker-deployments).
69 changes: 43 additions & 26 deletions docs/production-deployment/self-hosted-guide/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
id: index
title: Self-hosted Temporal Service guide
sidebar_label: Self-hosted guide
description: Discover how to self-host the open-source Temporal Service to orchestrate durable applications, or consider using Temporal Cloud for ease of use. Start with our tutorials and dev guide.
description:
Discover how to self-host the open-source Temporal Service to orchestrate durable applications, or consider using
Temporal Cloud for ease of use. Start with our tutorials and dev guide.
slug: /self-hosted-guide
toc_max_heading_level: 4
keywords:
Expand All @@ -12,38 +14,53 @@ tags:
- Self-hosting
---

Welcome to the self-hosted Temporal Service guide.
This guide shows you how to self-host open source infrastructure software that orchestrates your durable applications.
Welcome to the self-hosted Temporal Service guide. This guide shows you how to self-host open source infrastructure
software that orchestrates your durable applications.

:::info Sign up for Temporal Cloud!
:::tip Do you need a production Temporal Service?

Instead of self-hosting, you can use [Temporal Cloud](/cloud).
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have done a lot in the past months to emphasize cloud in the docs and I don't think this is needed on a page specifically here to teach users about self-hosting anymore. Stacking these callouts together makes the page look messy and make the other callout boxes less visible.

If you're still developing and testing your application locally, you may not need a production Temporal Service. Use the
[Temporal CLI development server](/cli/server#start-dev) — a single binary with no external dependencies:

:::

:::info Getting started with Temporal?
`temporal server start-dev`

If you are just getting started with Temporal, we recommend our [introductory tutorials and courses](https://learn.temporal.io)
This starts a complete Temporal Service with Web UI on your local machine. We recommend this for local development
regardless of whether you plan to use Temporal Cloud or self-host in production. See the
[Temporal CLI server](/cli/server) page for configuration options.

:::

:::info Building an app?
## Plan and deploy your service

If you are building a new Temporal Application, you might only need a [development server](/cli#start-dev-server) available through the [Temporal CLI](/cli).
Check out the [dev guide](/develop) for application development best practices.
- [Deployment](/self-hosted-guide/deployment): Choose a deployment approach (Docker, Kubernetes, or manual) and set up a
production-ready Temporal Service.
- [Embedded server](/self-hosted-guide/embedded-server): Run Temporal in-process as a Go library for local development
and testing scenarios.
- [Defaults](/self-hosted-guide/defaults): Review platform limits and default settings that can affect Workflow and
Activity behavior.
- [Production checklist](/self-hosted-guide/production-checklist): Validate readiness for scale, reliability,
operations, and long-term maintainability.

:::
## Operate your self-hosted service

- [Namespaces](/self-hosted-guide/namespaces): Create and manage Namespace isolation, retention, and related
configuration.
- [Security](/self-hosted-guide/security): Configure TLS/mTLS, authentication, authorization, and related hardening
controls.
- [Monitoring](/self-hosted-guide/monitoring): Collect and visualize service and SDK metrics to troubleshoot and track
health.
- [Visibility](/self-hosted-guide/visibility): Configure Visibility storage so you can list, filter, and search Workflow
Executions.
- [Upgrading server](/self-hosted-guide/upgrade-server#upgrade-server): Perform safe, sequential server and schema
upgrades.

## Protect data and enable advanced features

- [Deployment](/self-hosted-guide/deployment)
- [Embedded server](/self-hosted-guide/embedded-server)
- [Defaults](/self-hosted-guide/defaults)
- [Production checklist](/self-hosted-guide/production-checklist)
- [Namespaces](/self-hosted-guide/namespaces)
- [Security](/self-hosted-guide/security)
- [Monitoring](/self-hosted-guide/monitoring)
- [Visibility](/self-hosted-guide/visibility)
- [Data encryption](/production-deployment/data-encryption)
- [Upgrading server](/self-hosted-guide/upgrade-server#upgrade-server)
- [Archival](/self-hosted-guide/archival)
- [Multi-Cluster Replication](/self-hosted-guide/multi-cluster-replication)
- [Temporal Nexus](/production-deployment/self-hosted-guide/nexus)
- [Data encryption](/production-deployment/data-encryption): Use Payload Codecs and Codec Server patterns to protect
sensitive Workflow data.
- [Archival](/self-hosted-guide/archival): Move closed Event Histories and Visibility records to blob storage for longer
retention.
- [Multi-Cluster Replication](/self-hosted-guide/multi-cluster-replication): Replicate Workflow state across clusters
for failover and disaster recovery.
- [Temporal Nexus](/production-deployment/self-hosted-guide/nexus): Enable Nexus in self-hosted environments to connect
Temporal Applications across boundaries.
Loading