Environment Variables
Complete guide to all environment variables used in Pulsimo. Configure databases, authentication, monitoring, and notification services.
🚀 Quick Start
Minimum configuration to deploy Pulsimo:
# 1. Copy template cp .env.example .env # 2. Edit .env - Set these 3 variables: HOST_IP=192.168.1.100 # Your server IP POSTGRES_PASSWORD=$(openssl rand -base64 24) # Generate secure password JWT_SECRET=$(openssl rand -base64 32) # Generate secure secret # 3. Deploy ./setup-prod.sh
That's it! All other variables have sensible defaults.
Essential Variables
These must be configured for production deployment:
| Variable | Default | Description |
|---|---|---|
| HOST_IP | localhost | Server IP or domain name |
| POSTGRES_PASSWORD | ⚠️ Must change! | Database password |
| JWT_SECRET | ⚠️ Must change! | Authentication secret (32+ chars) |
Database Configuration
PostgreSQL Settings
POSTGRES_DBmonitoring_systemPOSTGRES_USERmonitoringPOSTGRES_PORT5432POSTGRES_PASSWORDRequiredRedis Configuration
| REDIS_URL | redis://redis:6379 |
| REDIS_PORT | 6379 |
SMTP Configuration
For email notifications. See detailed SMTP Configuration Guide.
Email Settings
SMTP_HOSTsmtp.gmail.comSMTP_PORT587SMTP_USERNAMERequired for emailSMTP_PASSWORDRequired for emailFROM_EMAILRequired for emailMonitoring Configuration
| Variable | Default | Description |
|---|---|---|
| CHECK_INTERVAL_SECONDS | 30 | How often to check endpoints |
| MAX_CONCURRENT_CHECKS | 100 | Parallel check limit |
| CHECK_TIMEOUT_SECONDS | 30 | Request timeout |
Security Best Practices
Generate Strong Passwords
openssl rand -base64 32Never commit .env files: Add .env to .gitignore. Use secrets management in production.
🔄 Rotate Secrets: Change JWT_SECRET and database passwords periodically.