What Is Umami?
Umami is a simple, fast, privacy-focused analytics tool. It is an open-source alternative to Google Analytics with a clean dashboard, no cookies, and full GDPR compliance.
Requirements
- A Breeze with at least 1 GB RAM
- Docker and Docker Compose
- A domain name
Step 1: Create Docker Compose File
mkdir -p /opt/umami && cd /opt/umami
cat > docker-compose.yml <<'EOF'
services:
umami:
image: ghcr.io/umami-software/umami:postgresql-latest
ports:
- "3000:3000"
environment:
DATABASE_URL: postgresql://umami:your_password@db:5432/umami
DATABASE_TYPE: postgresql
APP_SECRET: $(openssl rand -base64 32)
depends_on:
db:
condition: service_healthy
restart: unless-stopped
db:
image: postgres:16-alpine
environment:
POSTGRES_DB: umami
POSTGRES_USER: umami
POSTGRES_PASSWORD: your_password
volumes:
- umami-db:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U umami"]
interval: 5s
timeout: 5s
retries: 5
restart: unless-stopped
volumes:
umami-db:
EOFStep 2: Start Services
docker compose up -dStep 3: Configure Reverse Proxy and SSL
server {
server_name stats.yourdomain.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
# Then: sudo certbot --nginx -d stats.yourdomain.comStep 4: Log In and Add Your Website
Default credentials: admin / umami. Change the password immediately. Then add your website and copy the tracking script.