Skip to main content

Configuration

Environment variables control everything. No YAML files, no config directories.

Environment Variables

VariableDescriptionDefault
DOMAINYour email domain (e.g., mail.example.com)Required
POSTGRES_PASSWORDDatabase passwordRequired
API_SECRET_KEYSecret for JWT signing and key derivationRequired
API_PORTPort for the REST API8000
SMTP_PORTPort for inbound SMTP25
MAX_INBOX_TTLMaximum inbox lifetime in seconds2592000 (30 days)
MAX_EMAIL_SIZEMaximum email size in bytes10485760 (10 MB)
WEBHOOK_TIMEOUTWebhook delivery timeout in seconds10

Docker Compose Override

To customize ports or resource limits, create a docker-compose.override.yml:

services:
api:
ports:
- "3000:8000"
environment:
- MAX_INBOX_TTL=86400

DNS Configuration

Point your domain's MX record to your server:

yourdomain.com.  MX  10  mail.yourdomain.com.
mail.yourdomain.com. A YOUR_SERVER_IP

Optional DNS records for email deliverability:

yourdomain.com.  TXT  "v=spf1 ip4:YOUR_SERVER_IP ~all"