Mailcow — готовый набор контейнеров Docker, который разворачивает полноценный почтовый сервер: приём и отправку почты, веб-интерфейс вебмейла и календаря, антиспам и антивирус, собранные в один стек с единой административной панелью. В отличие от сборки Postfix вручную, Mailcow берёт на себя связку компонентов между собой, но требует больше ресурсов сервера и доверия к обновлениям готового образа.
Что входит в стек Mailcow
Приём и отправку писем в Mailcow выполняет Postfix, доступ по IMAP/POP3 — Dovecot, антиспам-фильтрацию — Rspamd, антивирусную проверку вложений — ClamAV, а веб-интерфейс почты и календаря предоставляет SOGo. Все компоненты запускаются как отдельные контейнеры Docker и обмениваются данными через внутреннюю сеть, а не устанавливаются по отдельности в систему.
Административная панель Mailcow объединяет управление доменами, почтовыми ящиками, алиасами и правилами фильтрации в одном веб-интерфейсе — то, что при ручной настройке Postfix и Dovecot обычно делается через правку текстовых конфигурационных файлов и отдельных баз данных.
Требования к ресурсам и системе
ClamAV и Rspamd вместе с базой MySQL и Redis заметно увеличивают потребление памяти по сравнению с одиночным Postfix: по документации проекта минимальный объём оперативной памяти — 2 GB, а на практике для стабильной работы со всеми компонентами обычно закладывают от 4 GB. Меньший объём памяти приводит к тому, что контейнер ClamAV либо не стартует, либо завершается по нехватке памяти при обновлении антивирусных баз.
Mailcow поддерживает запуск на выделенном VDS с собственным доменом и обратным DNS (PTR), настроенным на этот же домен — без корректной PTR-записи многие почтовые системы отклоняют письма ещё до проверки SPF и DKIM, независимо от того, насколько аккуратно настроен сам Mailcow.
Установка и первый запуск
Mailcow устанавливается через docker compose: конфигурация генерируется отдельным скриптом, после чего нужно поднять около десятка контейнеров одной командой. Базовые требования к системе — установленный Docker и Docker Compose — описаны в статье «Docker на VPS: установка и запуск контейнеров».
Первый запуск занимает заметное время: образы контейнеров нужно скачать, а база данных и почтовые таблицы — инициализировать. До завершения первого запуска административная панель может быть недоступна или отвечать с ошибками, что не означает сбой установки.
DNS и защита почты
Без базового набора DNS-записей — MX, SPF, DKIM и DMARC — Mailcow не гарантирует доходимость писем, как и любой другой почтовый сервер: контейнеры решают задачу приёма и отправки, но не отменяют необходимость правильно объявить домен в DNS. Полный порядок настройки этих записей, независимо от того, Mailcow или ручной Postfix стоит за ними, описан в статье «SPF, DKIM и DMARC: полная настройка защиты email».
Mailcow генерирует DKIM-ключ для домена автоматически через веб-интерфейс, но сама запись в DNS всё равно добавляется вручную — автоматизация касается только генерации ключа и подписи писем внутри контейнера, а не управления зоной DNS.
Mailcow или ручная настройка Postfix
Ручная установка Postfix даёт полный контроль над каждым параметром конфигурации и минимальное потребление ресурсов, но требует отдельно настраивать и связывать между собой Dovecot, антиспам и веб-почту, если они нужны; порядок такой настройки описан в статье «Postfix: настройка почтового сервера на VPS».
Mailcow подходит, когда нужен полный набор возможностей почтового сервера с веб-интерфейсом и минимумом ручной сборки компонентов, а ручной Postfix — когда нужен только приём и отправка почты с минимальным расходом памяти, без веб-почты и календаря.
- Postfix — приём и отправка писем
- Dovecot — доступ по IMAP и POP3
- Rspamd — фильтрация спама
- ClamAV — проверка вложений на вирусы
- SOGo — веб-интерфейс почты и календаря
- MySQL и Redis — хранение конфигурации и очередей
| Параметр | Mailcow | Ручной Postfix |
|---|---|---|
| Минимальная память | от 2 GB | от 512 MB |
| Веб-почта и календарь | есть (SOGo) | нужно устанавливать отдельно |
| Антиспам и антивирус | включены (Rspamd, ClamAV) | нужно устанавливать отдельно |
| Контроль над конфигурацией | через панель и готовые шаблоны | полный, через текстовые файлы |
git clone https://github.com/mailcow/mailcow-dockerized
cd mailcow-dockerized
./generate_config.sh
docker compose pull
docker compose up -d
Частые вопросы
Сколько оперативной памяти нужно для стабильной работы Mailcow?
По документации проекта минимум — 2 GB, но на практике для стабильной работы ClamAV, Rspamd и остальных компонентов одновременно обычно закладывают от 4 GB. При меньшем объёме памяти контейнер ClamAV чаще всего страдает первым — либо не стартует, либо перезапускается при обновлении антивирусных баз.
Можно ли запустить Mailcow без веб-интерфейса SOGo, если нужен только приём и отправка писем?
SOGo можно отключить в конфигурации, что немного снижает потребление ресурсов, но Postfix, Dovecot, Rspamd и ClamAV всё равно останутся частью стека — Mailcow не рассчитан на запуск одного компонента в отрыве от остальных. Если нужен только приём и отправка почты без веб-интерфейса и антивируса, проще и легче по ресурсам настроить Postfix вручную.
Нужно ли отдельно настраивать SPF, DKIM и DMARC, если почта уже работает через Mailcow?
Да, Mailcow автоматизирует генерацию DKIM-ключа и подписание писем внутри контейнеров, но сами DNS-записи — MX, SPF, DKIM и DMARC — нужно добавить в зону домена вручную, как и при любом другом почтовом сервере. Без этих записей письма из Mailcow будут доходить так же плохо, как и с любого непрогретого сервера без защиты email.