Docs / Self-Hosted Applications / How to Self-Host Listmonk Email Newsletter

How to Self-Host Listmonk Email Newsletter

By Admin · Mar 1, 2026 · Updated Apr 23, 2026 · 26 views · 1 min read

What Is Listmonk?

Listmonk is a self-hosted newsletter and mailing list manager. It handles subscriber management, campaign creation, and email delivery — an alternative to Mailchimp or ConvertKit.

Requirements

  • A Breeze with at least 1 GB RAM
  • Docker and Docker Compose
  • An SMTP provider (Amazon SES, SendGrid, or your own Postfix)

Docker Compose Setup

mkdir -p /opt/listmonk && cd /opt/listmonk
cat > docker-compose.yml <<'EOF'
services:
  listmonk:
    image: listmonk/listmonk:latest
    restart: unless-stopped
    ports:
      - "9000:9000"
    environment:
      - TZ=America/New_York
    volumes:
      - ./config.toml:/listmonk/config.toml
    depends_on:
      - db

  db:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: listmonk
      POSTGRES_USER: listmonk
      POSTGRES_PASSWORD: listmonk_password
    volumes:
      - listmonk-db:/var/lib/postgresql/data

volumes:
  listmonk-db:
EOF

Configuration

cat > config.toml <<'EOF'
[app]
address = "0.0.0.0:9000"
admin_username = "admin"
admin_password = "changeme"

[db]
host = "db"
port = 5432
user = "listmonk"
password = "listmonk_password"
database = "listmonk"
ssl_mode = "disable"
EOF

# Initialize the database
docker compose run --rm listmonk ./listmonk --install
docker compose up -d

Features

  • Multi-list subscriber management
  • Rich HTML email editor
  • Template system
  • Campaign scheduling
  • Analytics (opens, clicks, bounces)
  • REST API for integrations
  • Import/export subscribers

Was this article helpful?