---
title: Deploy ZITADEL
sidebar_label: Overview
---

Choose your platform and run ZITADEL with the most minimal configuration possible.

- [Linux](./linux)
- [MacOS](./macos)
- [Docker Compose](./compose)
- [Knative](./knative)
- [Kubernetes](./kubernetes)

## Prerequisites

- For test environments, ZITADEL does not need many resources, 1 CPU and 512MB memory are more than enough. (With more CPU, the password hashing might be faster)
- A PostgreSQL or CockroachDB as only needed storage. Make sure to read our [Production Guide](/docs/self-hosting/manage/production#prefer-postgresql) before you decide to use Postgresql.

## Releases

The easiest way to use ZITADEL is to run one of our container releases

- ZITADEL does provide latest and stable [container images](https://github.com/zitadel/zitadel/pkgs/container/zitadel)
- **stable** is the current **production** release of ZITADEL.
- **latest** is the **last created** release from our pipelines that gets updated in a high frequency.

# Production Setup

After you have successfully created your first test environment using one of the deployment guides in this section,
you might want to configure ZITADEL for production and embed it into your system landscape.
To do so, jump straight to the [production setup guide](/docs/self-hosting/manage/production).

To achieve high availability, we recommend using a [Kubernetes](https://kubernetes.io/docs/home/) Cluster.
We have an official [Helm chart](https://artifacthub.io/packages/helm/zitadel/zitadel) for easy deployment and maintenance.
