All Selu configuration is done through environment variables, typically set in your .env file alongside docker-compose.yml. This page lists every available variable.
These must be set for Selu to start:
Variable Description SELU_SECRET_KEYMaster encryption key for credentials. Use a random string of at least 32 characters. POSTGRES_PASSWORDPassword for the PostgreSQL database.
Variable Description Default SELU_PORTPort the Selu dashboard listens on 3000SELU_HOSTHostname or IP to bind to 0.0.0.0SELU_BASE_URLPublic URL of your Selu instance (used for webhooks) http://localhost:3000SELU_LOG_LEVELLogging verbosity: debug, info, warn, error info
Variable Description Default DATABASE_URLFull PostgreSQL connection string (overrides individual vars) — POSTGRES_HOSTDatabase hostname selu-dbPOSTGRES_PORTDatabase port 5432POSTGRES_DBDatabase name seluPOSTGRES_USERDatabase username postgresPOSTGRES_PASSWORDDatabase password —
Variable Description Default TELEGRAM_BOT_TOKENTelegram bot token (alternative to setting it in the dashboard) — BLUEBUBBLES_URLBlueBubbles server URL for iMessage — BLUEBUBBLES_PASSWORDBlueBubbles server password —
Variable Description Default ANTHROPIC_API_KEYAnthropic API key — OPENAI_API_KEYOpenAI API key — AWS_ACCESS_KEY_IDAWS access key for Bedrock — AWS_SECRET_ACCESS_KEYAWS secret key for Bedrock — AWS_REGIONAWS region for Bedrock us-east-1OLLAMA_BASE_URLOllama server URL http://host.docker.internal:11434
Variable Description Default SELU_AGENT_NETWORKDocker network name for agent containers selu-agentsSELU_AGENT_TIMEOUTDefault gRPC timeout for agent calls (seconds) 30SELU_AGENT_MAX_MEMORYMemory limit per agent container 512m
Variable Description Default SELU_SESSION_IDLE_TIMEOUTIdle timeout before a session expires (minutes) 30SELU_SESSION_MAX_HISTORYMaximum messages kept in session context 100
Place your .env file in the same directory as docker-compose.yml. Docker Compose picks it up automatically:
SELU_SECRET_KEY = a1b2c3d4e5f6...
POSTGRES_PASSWORD = my-strong-password
SELU_BASE_URL = https://selu.example.com
You can also set variables directly in the docker-compose.yml under the environment key, but the .env file is cleaner for most setups.