#!/bin/bash set -e # PostgreSQL initialization script for AI stack # This script runs on first database initialization # Creates all databases required by AI services echo "Starting AI stack database initialization..." psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL -- Create databases for AI services -- Open WebUI database SELECT 'CREATE DATABASE openwebui' WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'openwebui')\gexec -- LiteLLM proxy database SELECT 'CREATE DATABASE litellm' WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'litellm')\gexec -- Grant privileges to all databases GRANT ALL PRIVILEGES ON DATABASE openwebui TO $POSTGRES_USER; GRANT ALL PRIVILEGES ON DATABASE litellm TO $POSTGRES_USER; -- Log success SELECT 'AI stack databases initialized:' AS status; SELECT datname FROM pg_database WHERE datname IN ('openwebui', 'litellm') ORDER BY datname; EOSQL echo "" echo "✓ PostgreSQL initialization completed" echo "✓ All AI stack databases created successfully" echo "" echo "Databases available:" echo " • openwebui - Open WebUI application database" echo " • litellm - LiteLLM proxy database" echo ""