Skip to content
Platform & Configuration
Installation
Basic Deployment
Docker

Installing Astralis with Docker

This guide covers two approaches for deploying Astralis with Docker:

  1. Quick Start with Defaults - Run Astralis immediately with built-in configuration
  2. Custom Configuration - Connect to external databases and customize settings

Prerequisites

See the project requirements to get started.

Run docker -v in a new shell to confirm that Docker is ready to use:

Example output:
% docker -v
Docker version 20.10.11, build dea9396

Once you are sure Docker is running, you are ready to install Astralis!

Pull the Docker Images

Run the following command to pull the latest image from Ethyca's DockerHub (opens in a new tab):

docker pull ethyca/fides

To pull the Astralis Privacy Center, run the following:

docker pull ethyca/fides-privacy-center

Method 1: Quick Start with Defaults

Run Astralis immediately with built-in configuration and default settings.

Run the Webserver

Start the Astralis webserver with default configuration:

docker run -p 8080:8080 ethyca/fides

With the Astralis webserver running, the hosted UI is available at http://localhost:8080/.

⚠️

Development Use Only: This setup uses default credentials and embedded dependencies. For custom configuration, see Method 2 below.

Next Steps


Method 2: Custom Configuration

Connect Astralis to your own PostgreSQL and Redis instances with custom environment configuration.

Prerequisites

In addition to Docker, you'll need:

  • External PostgreSQL database (AWS RDS, GCP Cloud SQL, or self-hosted)
  • External Redis cache (AWS ElastiCache, GCP Memorystore, or self-hosted)

See the Architecture Overview for more details on external services.

Configure Astralis

You can provide configuration via an .env file using the --env-file option (opens in a new tab) or individual --env variables.

See the Requirements page for a complete list of required configuration variables and their descriptions.

Create Configuration File

Create a config.env file with your values:

config.env
FIDES__SECURITY__APP_ENCRYPTION_KEY="athirtytwocharacterencryptionkey" 
FIDES__SECURITY__OAUTH_ROOT_CLIENT_ID="fidesadmin" 
FIDES__SECURITY__OAUTH_ROOT_CLIENT_SECRET="fidesadminsecret" 
FIDES__DATABASE__SERVER="postgres.internal" 
FIDES__DATABASE__PORT="5432" 
FIDES__DATABASE__USER="fides" 
FIDES__DATABASE__PASSWORD="fidessecret" 
FIDES__DATABASE__DB="fides" 
FIDES__REDIS__HOST="redis.internal" 
FIDES__REDIS__PORT=6379 
FIDES__REDIS__PASSWORD="fidessecret"
⚠️

Security: Replace all example values with secure, randomly generated values. Never use default credentials in production.

Start the Server

Using Environment File

docker run \
  -p 8080:8080 \
  --env-file=config.env \
  ethyca/fides

Using Individual Environment Variables

docker run \
  -p 8080:8080 \
  --env FIDES__SECURITY__APP_ENCRYPTION_KEY="athirtytwocharacterencryptionkey" \
  --env FIDES__SECURITY__OAUTH_ROOT_CLIENT_ID="fidesadmin" \
  --env FIDES__SECURITY__OAUTH_ROOT_CLIENT_SECRET="fidesadminsecret" \
  --env FIDES__DATABASE__SERVER="postgres.internal" \
  --env FIDES__DATABASE__PORT="5432" \
  --env FIDES__DATABASE__USER="fides" \
  --env FIDES__DATABASE__PASSWORD="fidessecret" \
  --env FIDES__DATABASE__DB="fides" \
  --env FIDES__REDIS__HOST="redis.internal" \
  --env FIDES__REDIS__PORT=6379 \
  --env FIDES__REDIS__PASSWORD="fidessecret" \
  ethyca/fides
💡

Note: The webserver is fully ephemeral and relies on the external database for persistent state. No volume mount is required for the Astralis container.

Verify Installation

To test that your server is running:

  1. Health Check: Visit http://localhost:8080/health

    • You should see: {"webserver": "healthy", "database": "healthy", "cache": "healthy"}
  2. Admin UI: Visit http://localhost:8080/ to access the Astralis admin interface

Deploy Privacy Center (Optional)

Pull the Privacy Center image:

docker pull ethyca/fides-privacy-center

Configure and start the Privacy Center:

docker run --rm \
  -v $(pwd)/config:/app/config \
  -p 3000:3000 \
  ethyca/fides-privacy-center:latest

For more configuration options, see the Privacy Center configuration guide.

Next Steps