Skip to main content

Deployment via Helm Charts

Minimum System Requirements

  • Stellar Accounts: You will need a Distribution Account (funded) and a SEP-10 Signing Account.
  • Certificates: 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.

Installing the Chart

1. Add the Stellar Helm Repository

Add the official Stellar Helm chart repository to your local Helm client:

2. Prepare Configuration

Download the minimal configuration file to serve as a baseline:
The following parameters can be set in the minimal-values.yaml file or overridden directly via the CLI during installation:
  • global.distributionPublicKey: Public key of the distribution account.
  • global.distributionPrivateKey: Private key of the distribution account.
  • global.sep10PublicKey: Public key for SEP-10 authentication.
  • global.sep10PrivateKey: Private key for SEP-10 authentication.
  • global.isPubnet: Set to true for Mainnet.
Refer to the Helm Chart README for a complete list of parameters.
There is a more detailed explanation of how to configure the SDP in the Configuration Guide.

3. Install the Chart

Install the chart using your customized values file. You can override values directly via the CLI or modify the minimal-values.yaml file.

Deployment via Docker Compose

This section deploys the SDP with the Docker Compose release stack, dev/docker-compose.yml. Unlike the development setup, this configuration runs the published production images and does not include the Delve debugger or the demo wallet. Explicit configuration of environment variables and secrets is required.

Minimum System Requirements

  • Stellar Accounts: You will need a Distribution Account (funded) and a SEP-10 Signing Account.
  • Network Access: Outbound access to the Stellar network (Horizon/Soroban) and any third-party integrations (Twilio, AWS SES, etc.).

Deployment Steps

1. Clone the Repository

2. Create Environment File

Copy the example environment file.

3. Configure Environment Variables

Edit dev/.env and populate the following variables with your Stellar account keys:
  • DISTRIBUTION_PUBLIC_KEY
  • DISTRIBUTION_SEED
  • SEP10_SIGNING_PUBLIC_KEY
  • SEP10_SIGNING_PRIVATE_KEY
Optionally, adjust:
  • SDP_VERSION, SDP_FRONTEND_VERSION: the backend and dashboard image tags to run.
  • SDP_BIND_ADDR: host address for the API and dashboard ports (default 127.0.0.1, this machine only).
All ports are published on 127.0.0.1. The database (5432), metrics (8002, 9002) and admin API (8003) always stay there. To expose the API and dashboard on other interfaces, set SDP_BIND_ADDR=0.0.0.0, and point BASE_URL and SDP_UI_BASE_URL in dev/.env and API_URL in dev/env-config-<network>.js at the host’s address. For mainnet deployment, set:
  • NETWORK_TYPE=pubnet
  • NETWORK_PASSPHRASE=Public Global Stellar Network ; September 2015
  • HORIZON_URL=https://horizon.stellar.org
  • STELLAR_EXPERT_URL=https://stellar.expert/explorer/public
  • DISABLE_MFA=false (enforced for security)
Mainnet deployment uses real funds; exercise extreme caution. Docker Compose is not recommended for production.Explicitly configure environment variables and secrets in your mainnet .env file. Do not leave default values for secrets.
Refer to the Configuration Guide for more details on configuring environment variables.

4. Start the Services

To test over HTTPS locally (needed for passkeys), add the overlay:
This serves only the dashboard over HTTPS, on port 3443, with mkcert certificates from dev/certs.