Databases

IDAH requires PostgreSQL and Redis to function. Choose one of the setup options below.

Required Services

  • PostgreSQL 17 - Primary database
  • Redis - Stream processing and caching

Setup Options

Option 1: Use Local PostgreSQL and Redis

If you already have PostgreSQL and Redis installed on your local machine, IDAH will connect to them using the default configuration.

Default Configuration

  • PostgreSQL: host.docker.internal:5432
  • Credentials: postgres:postgres
  • Redis: redis://host.docker.internal:6379/0

Make sure both services are running on the default ports before starting IDAH.

Custom Configuration

If your database credentials are different, edit .env.docker to match your setup.

.env.docker
# PostgreSQL configuration
POSTGRES_HOST=host.docker.internal
POSTGRES_CREDENTIALS=postgres:postgres
POSTGRES_PORT=5432

# Redis configuration
REDIS_STREAM_URL=redis://host.docker.internal:6379/0

Verify Local Services

Check that both services are running:

# Check PostgreSQL psql -h localhost -U postgres -c "SELECT version();" # Check Redis redis-cli ping

Option 2: Use Docker Containers

If you don't have PostgreSQL and Redis installed, use Docker containers:

docker compose -f docker-compose-db.yml up -d

This starts PostgreSQL and Redis containers with the required configuration.

Verify Docker Containers

Check that containers are running:

# Check container status docker compose -f docker-compose-db.yml ps # Test PostgreSQL connection docker compose
        -f docker-compose-db.yml exec postgres psql -U postgres -c "SELECT version();" # Test Redis connection docker
        compose -f docker-compose-db.yml exec redis redis-cli ping

Next Steps

Once your databases are running, proceed to:

  1. Persistent Storage - Configure file storage for media and exports
  2. Starting IDAH - Build and run the IDAH services

💾 Databases are ready! Continue with storage configuration and then start the services.