После создания сервера listmonk разворачивается сам: Docker Compose поднимает PostgreSQL и само приложение, Caddy отдельным контейнером выпускает Let's Encrypt и открывает доступ по HTTPS на magic-DNS домене. Первый запуск занимает около полутора минут.

Что внутри

  • listmonk (Go) - единственное приложение: списки подписчиков, кампании, шаблоны писем, транзакционные письма через API, статистика открытий и переходов.
  • PostgreSQL - хранит подписчиков, кампании и все настройки продукта (включая почту - см. ниже).
  • Caddy - reverse-proxy и авто-TLS (Let's Encrypt), отдельный контейнер. listmonk слушает только localhost.

Почта

listmonk сам письма не отправляет - это менеджер рассылок, а не почтовый сервер. Без внешнего SMTP-провайдера (свой Yandex, Mailgun, корпоративный релей) ни одна кампания не уйдет - это устройство продукта, не недоделка установки. Подключается в интерфейсе (Settings -> SMTP) или параметрами при заказе.

Как войти

  1. Адрес формируется из IP сервера: замените точки на дефисы и добавьте .fatmetal.net.
  2. Администратор уже заведен: логин admin, пароль - пароль этого сервера, тот же, что для SSH (он в личном кабинете).
  3. Смените пароль сразу: Settings -> Users. Дальше: создайте список, загрузите подписчиков (CSV с любыми своими полями), подготовьте кампанию и отправьте.

Свой домен

Наведите A-запись на IP этого сервера, впишите домен в DOMAIN= (/etc/listmonk-mp/params.env) и запустите bash /opt/listmonk-mp/install.sh еще раз - скрипт идемпотентен, Caddy перевыпустит сертификат под новый домен.

Требования

Разработчик минимумов по CPU/RAM/диску не публикует. На тестовом стенде вся связка (listmonk + PostgreSQL + Caddy) в простое занимает около 50 МиБ памяти - замер на базе 100 тысяч подписчиков, а не на пустой установке; база такого размера - 61 МБ на диске. Тариф CPU2-RAM4-DISK50.

Подробный разбор с замерами