mailcow
mailcow: dockerized - Роль Ansible 🐮 + 🐋 = 💕
Эта роль настраивает почтовый сервер mailcow, работающий в Docker.
Предварительные требования
- У вас должен быть запущен хост на Ubuntu/Debian (другие дистрибутивы пока не поддерживаются/не тестировались)
- Требуется Docker Compose версии 2!
Требования
Требования | Описание |
---|---|
docker ce | Docker должен быть установлен на хосте |
docker-compose | Необходим docker-compose |
Примечания
Эта роль по умолчанию будет использовать inventory_hostname
в качестве имени хоста для mailcow, это значит, что вы должны использовать полное доменное имя в качестве имени хоста в инвентаризации, например mail.mailcow.tld
, или установить mailcow__hostname
на правильное полное доменное имя.
Переменные
имя | назначение | значение по умолчанию | заметка |
---|---|---|---|
mailcow__hostname |
устанавливает MAILCOW_HOSTNAME | inventory_hostname |
должно быть полным доменным именем |
mailcow__install_path |
устанавливает путь, где будет клонирован репозиторий mailcow-dockerized | /opt/mailcow-dockerized |
|
mailcow__git_version |
выбирает конкретную версию mailcow | master |
|
mailcow__timezone |
используется для установки часового пояса, в котором работает mailcow во время генерации конфигурации | не установлен | должен быть указан |
mailcow__docker_compose_project_name |
устанавливает имя проекта docker-compose на пользовательскую строку | mailcowdockerized |
|
mailcow__theme |
устанавливает тему mailcow по умолчанию в vars.local.inc.php | lumen |
|
mailcow__config_http_port |
устанавливает HTTP_PORT в mailcow.conf | 80 |
|
mailcow__config_http_bind |
устанавливает HTTP_BIND в mailcow.conf | none |
|
mailcow__config_https_port |
устанавливает HTTPS_PORT в mailcow.conf | 443 |
|
mailcow__config_https_bind |
устанавливает HTTPS_BIND в mailcow.conf | none |
|
mailcow__config_acl_anyone |
устанавливает ACL_ANYONE | disallow | |
mailcow__config_maildir_gc_time |
устанавливает MAILDIR_GC_TIME в mailcow.conf | 1440 |
|
mailcow__config_additional_san |
устанавливает ADDITIONAL_SAN в mailcow.conf | должно быть списком | |
mailcow__config_additional_server_names |
устанавливает ADDITIONAL_SERVER_NAMES в mailcow.conf | должно быть списком | |
mailcow__config_skip_lets_encrypt |
устанавливает SKIP_LETS_ENCRYPT в mailcow.conf | ||
mailcow__config_enable_ssl_sni |
устанавливает ENABLE_SSL_SNI в mailcow.conf | ||
mailcow__config_skip_ip_check |
устанавливает SKIP_IP_CHECK в mailcow.conf | ||
mailcow__config_skip_http_verification |
устанавливает SKIP_HTTP_VERIFICATION в mailcow.conf | n |
|
mailcow__config_skip_clamd |
устанавливает SKIP_CLAMD в mailcow.conf | n |
|
mailcow__config_skip_solr |
устанавливает SKIP_SOLR в mailcow.conf | n |
|
mailcow__config_solr_heap |
устанавливает SOLR_HEAP в mailcow.conf | 1024 |
|
mailcow__config_skip_sogo |
устанавливает SKIP_SOGO в mailcow.conf | n |
|
mailcow__config_allow_admin_email_login |
устанавливает ALLOW_ADMIN_EMAIL_LOGIN в mailcow.conf | n |
|
mailcow__config_use_watchdog |
устанавливает USE_WATCHDOG в mailcow.conf | n |
|
mailcow__config_watchdog_notify_email |
устанавливает WATCHDOG_NOTIFY_EMAIL в mailcow.conf | ||
mailcow__config_watchdog_notify_ban |
устанавливает WATCHDOG_NOTIFY_BAN в mailcow.conf | y |
|
mailcow__config_watchdog_subject |
устанавливает WATCHDOG_SUBJECT в mailcow.conf | Watchdog ALERT |
|
mailcow__config_log_lines |
устанавливает LOG_LINES в mailcow.conf | 9999 |
|
mailcow__config_sogo_expire_session |
устанавливает SOGO_EXPIRE_SESSION в mailcow.conf | 480 |
|
mailcow__install_updates |
если yes , роль ansible mailcow также обновит существующую установку |
yes |
|
mailcow__redirect_http_to_https |
если yes , все запросы через HTTP будут перенаправлены на HTTPS |
no |
также смотрите https://mailcow.github.io/mailcow-dockerized-docs/u_e-80_to_443/ |
mailcow__config_acme_contact |
устанавливает ACME_CONTACT в mailcow.conf | ||
mailcow__rspamd_clamd_servers |
настраивает сервер clamd, используемый rspamd | clamd:3310 |
|
mailcow__compose_command |
настраивает команду, которая используется для compose | docker compose |
установите на docker-compose для автономной версии compose |
Использование
Минимальный плейбук:
---
- name: Установить Python3
hosts: all
become: true
gather_facts: false
roles:
- { role: raw,0.0, vars: {command: 'apt-get install -y python3 python3-pip'} }
- name: Главный плейбук
hosts: all
become: true
gather_facts: true
vars:
mailcow__timezone: Europe/Berlin
roles:
- Ansible-Roles.docker-ce
- Ansible-Roles.docker-compose
- Ansible-Roles.mailcow
Установить
ansible-galaxy install mailcow/mailcow-ansiblerole
Лицензия
gpl-3.0
Загрузки
7050
Владелец