Skip to main content

Deploy the SDP

In this guide, you will learn to deploy the SDP on a Kubernetes cluster using publicly available Helm charts.

This option is recommended for persistent deployments of production or staging instances of the SDP. If you want to deploy the SDP on a local machine for development purposes, see Run the SDP Locally.

Please note that configuring deployment details like ingress, TLS, resource limits, and so on are out of scope for this guide. This guide assumes that you have a Kubernetes cluster with a Postgres database deployed in the same cluster and that you have the necessary permissions to deploy the SDP. It also assumes that you have the operational knowledge to manage the cluster and the database.

Prerequisites

  • Kubernetes 1.19+
  • Helm 3.2.0+
  • Postgres 14.0+

Installing the Chart

Add the Helm repository

Before you can install the chart, you need to add the Stellar Helm repository.

helm repo add stellar https://helm.stellar.org/charts
helm repo update

Customize the values

The SDP Helm chart has a number of configurable values. You can customize these values by creating a values file and passing it to the helm install command.

We provided a sample values file that you can use as a starting point. This file has the minimum set of configurations required to deploy an SDP instance. You can download the file from the SDP GitHub repository or by running the following command:

curl -O https://raw.githubusercontent.com/stellar/stellar-disbursement-platform-backend/develop/helmchart/sdp/minimal-values.yaml

You can find the full list of configurable values in the SDP GitHub repository.

There is a more detailed explanation of how to configure the SDP in the Configuring the SDP Guide.

Multi-tenant considerations

When running the SDP in a multi-tenant configuration, you will need to acquire wildcard TLS certificates to facilitate tenant provisioning as the SDP relies on subdomains to differentiate between tenants. This will allow you to provision tenants without having to manually configure TLS certificates for each tenant. You can use a service like Let's Encrypt or Namecheap to acquire these certificates.

For more information about multi-tenancy in the SDP, see the Design and Architecture Guide.

Install the chart

To install the chart with the release name sdp and the values file myvalues.yaml:

helm install sdp -f myvalues.yaml stellar/stellar-disbursement-platform

Now you should have a running SDP instance. To learn how to use the SDP, see Create your first disbursement.