К основному содержимому

Mailcow: свой почтовый сервер в контейнерах Docker

Безопасность · 18.10.2026 · 5 мин чтения
Иллюстрация к статье «Mailcow: свой почтовый сервер в контейнерах Docker»

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.

Статья помогла?
← Назад в базу знаний Задать вопрос поддержке