coaxial.mailcow

Rola mailcow

Status budowy

Ten playbook skonfiguruje serwer pocztowy mailcow oraz opcjonalne, godzinne kopie zapasowe borg (patrz zmienne, aby wyłączyć) Kopie zapasowe są zapisywane do /var/backup i usuwane, gdy są przetwarzane przez borg. Zachowywane są ostatnie 24 godzinne, 7 dziennych, 4 tygodniowe, 6 miesięcznych i 1 roczna kopia zapasowa.

Minimalna konfiguracja dla hosta mailcow to 1 GHz CPU, 1 GB RAM, 5 GB dysku. Zalecane jest 1,5 GB RAM oraz swap, jeśli clamd jest włączone. Zaplanuj dodatkowe miejsce na dysku na tworzenie godzinnych kopii zapasowych oraz opcjonalny plik swap (1x RAM).

Wymagania wstępne

Zmienne

nazwa cel wartość domyślna uwaga
mailcow__hostname ustaw MAILCOW_HOSTNAME w mailcow.conf (patrz https://mailcow.github.io/mailcow-dockerized-docs/install/) nie ustawione musi być ustawione
mailcow__additional_san ustaw ADDITIONAL_SAN w mailcow.conf, aby umożliwić dodatkowe domeny (patrz https://mailcow.github.io/mailcow-dockerized-docs/firststeps-ssl/#additional-domain-names) nieokreślone, opcjonalne wartości oddzielone przecinkami: lala.example.com,yay.example.org (nie powtarzaj mailcow__hostname)
mailcow__skip_known_hosts czy używać niestandardowego pliku known_hosts do kopii zapasowych borgmatic false true lub false, pozwala kontenerowi borgmatic połączyć się z zdalnym repozytorium borg bez pytania o akceptację klucza
mailcow__dbpass ustaw dbpass w mailcow.conf (patrz https://mailcow.github.io/mailcow-dockerized-docs/install/) nie ustawione musi być ustawione
mailcow__dbroot ustaw dbroot w mailcow.conf (patrz https://mailcow.github.io/mailcow-dockerized-docs/install/) nie ustawione musi być ustawione
mailcow__http_port ustaw HTTP_PORT w mailcow.conf (patrz https://mailcow.github.io/mailcow-dockerized-docs/install/) 80
mailcow__http_bind ustaw HTTP_BIND w mailcow.conf (patrz https://mailcow.github.io/mailcow-dockerized-docs/install/) 0.0.0.0
mailcow__https_port ustaw HTTPS_PORT w mailcow.conf (patrz https://mailcow.github.io/mailcow-dockerized-docs/install/) 443
mailcow__https_bind ustaw HTTPS_BIND w mailcow.conf (patrz https://mailcow.github.io/mailcow-dockerized-docs/install/) 0.0.0.0
mailcow__tz ustaw TZ w mailcow.conf UTC lista możliwych wartości
mailcow__skip_le ustaw SKIP_LETS_ENCRYPT w mailcow.conf n y lub n
mailcow__skip_clamd ustaw SKIP_CLAMD w mailcow.conf n y lub n
mailcow__ssh_key_name nazwa pliku dla kluczy ssh używanych z borg (czyli, jeśli klucze nazywają się mykey_rsa i mykey_rsa.pub, ta zmienna powinna być ustawiona na mykey_rsa) borg_ssh_key
mailcow__borg_repo_host wskaź gdzie jest hostowane repozytorium borg (czyli część przed : w URL repozytorium borg) nie ustawione musi być ustawione (czyli [email protected])
mailcow__borg_repo_name nazwa repozytorium borg, tj. część po : i przed :: w URL repozytorium borg mailcow czyli myrepo z [email protected]:myrepo::backupname
mailcow__ntp_servers nadpisz domyślne serwery ntp dla synchronizacji czasu na hoście dockera. 0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org musi być ciągiem oddzielonych spacjami nazw hostów/FQDN/IP
mailcow__enable_swap użyj pliku swap (zalecane dla hostów z mniej niż 3 GB RAM) true utworzy plik swap w /swapfile, który ma taką samą wielkość jak ilość RAM na hoście
mailcow__enable_backups włącz godzinne kopie zapasowe do repozytorium borg true należy ustawić na true lub false
mailcow__git_version pobierz określoną wersję mailcow master dowolny commit, nazwa gałęzi lub tag z repozytorium git mailcow

Pliki

W katalogu files/:

nazwa cel uwaga
borg_ssh_key{,.pub} klucze ssh do łączenia się z zdalnym repozytorium borg (ustaw mailcow__ssh_key_name, jeśli nie używasz domyślnej nazwy). używane tylko, jeśli mailcow__enable_backups jest ustawione na true
passphrase hasło do zdalnego repozytorium borg tylko jeśli mailcow__enable_backups
known_hosts niestandardowy plik known_hosts dla kontenera borgmatic, aby uniknąć błędów z nieznanym kluczem patrz zmienna mailcow__skip_known_hosts powyżej. Aby uzyskać aktualny klucz dla swojego serwera, uruchom ssh-keyscan 93.184.216.34. Używane tylko, jeśli mailcow__enable_backups jest true

Kopie zapasowe

Jeśli mailcow__enable_backups jest ustawione, kopie zapasowe będą generowane co godzinę, na pełną godzinę, za pomocą skryptu kopii zapasowej mailcow.

Kontener docker-borgmatic wyśle kopię zapasową do określonego repozytorium borg co godzinę o 30 po godzinie i posprząta katalog kopii zapasowej po tym. W przypadku zdalnych repozytoriów borg, rsync.net jest całkiem dobry.

Użycie

Minimalny playbook:

---
- hosts: all
  become: true
  gather_facts: false
  vars:
    mailcow__borg_repo_host: [email protected]
    mailcow__hostname: test
    mailcow__dbpass: test
    mailcow__dbroot: test
    rawpython__os_family: Debian

  roles:
    - coaxial.raw-python  # bootstrap python na czystym Ubuntu/Debian
    - coaxial.mailcow
O projekcie

Mailcow in Docker containers + hourly backups with borg

Zainstaluj
ansible-galaxy install coaxial.mailcow
Licencja
Unknown
Pobrania
82
Właściciel