Added new Sections with Compose Switch

Dieser Commit ist enthalten in:
DerLinkman 2022-12-15 15:31:09 +01:00
Ursprung 460476a091
Commit 2571d5812a
45 geänderte Dateien mit 510 neuen und 230 gelöschten Zeilen

Datei anzeigen

@ -1,11 +1,11 @@
Um mailcow: dockerized mit all seinen Volumes, Images und Containern zu entfernen, tun Sie dies:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose down -v --rmi all --remove-orphans
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose down -v --rmi all --remove-orphans

Datei anzeigen

@ -1,11 +1,11 @@
To remove mailcow: dockerized with all it's volumes, images and containers do:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose down -v --rmi all --remove-orphans
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose down -v --rmi all --remove-orphans

Datei anzeigen

@ -139,14 +139,14 @@ Sollten Sie jedoch kein IPv6-fähiges Netzwerk auf Ihrem Host haben und Sie sich
## mailcow starten
Laden Sie die Images herunter und fĂĽhren Sie die Compose-Datei aus. Der Parameter `-d` wird ihre mailcow dann im Hintergrund starten:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose pull
docker compose up -d
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose pull

Datei anzeigen

@ -139,14 +139,14 @@ If you do not have an IPv6 enabled network on your host and you don't care for a
## Start mailcow
Pull the images and run the compose file. The parameter `-d` will start mailcow: dockerized detached:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose pull
docker compose up -d
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose pull

Datei anzeigen

@ -20,7 +20,7 @@ rsync -aHhP --numeric-ids --delete /var/lib/docker/volumes/ root@target-machine.
```
**4\.** Schalten Sie mailcow ab und stoppen Sie Docker auf dem Quellrechner.
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
cd /opt/mailcow-dockerized
@ -28,7 +28,7 @@ rsync -aHhP --numeric-ids --delete /var/lib/docker/volumes/ root@target-machine.
systemctl stop docker.service
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
cd /opt/mailcow-dockerized
@ -44,14 +44,14 @@ systemctl start docker.service
```
**7\.** Ziehen Sie nun die mailcow Docker-Images auf den Zielrechner.
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
cd /opt/mailcow-dockerized
docker compose pull
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
cd /opt/mailcow-dockerized
@ -59,13 +59,13 @@ systemctl start docker.service
```
**8\.** Starten Sie den gesamten mailcow-Stack und alles sollte fertig sein!
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker compose up -d

Datei anzeigen

@ -20,7 +20,7 @@ rsync -aHhP --numeric-ids --delete /var/lib/docker/volumes/ root@target-machine.
```
**4\.** Shut down mailcow and stop Docker on the source machine.
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
cd /opt/mailcow-dockerized
@ -28,7 +28,7 @@ rsync -aHhP --numeric-ids --delete /var/lib/docker/volumes/ root@target-machine.
systemctl stop docker.service
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
cd /opt/mailcow-dockerized
@ -44,14 +44,14 @@ systemctl start docker.service
```
**7\.** Now pull the mailcow Docker images on the target machine.
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
cd /opt/mailcow-dockerized
docker compose pull
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
cd /opt/mailcow-dockerized
@ -59,13 +59,13 @@ systemctl start docker.service
```
**8\.** Start the whole mailcow stack and everything should be done!
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker compose up -d

Datei anzeigen

@ -64,7 +64,7 @@ FĂĽhren Sie `git diff 22cd00b5e28893ef9ddef3c2b5436453cc5223ab` aus, um zu sehen
Ja.
Siehe das obige Thema, anstelle eines Diffs fĂĽhren Sie checkout aus:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose down
@ -74,7 +74,7 @@ Siehe das obige Thema, anstelle eines Diffs fĂĽhren Sie checkout aus:
docker compose up -d
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose down

Datei anzeigen

@ -64,7 +64,7 @@ Run `git diff 22cd00b5e28893ef9ddef3c2b5436453cc5223ab` to see what changed.
Yes.
See the topic above, instead of a diff, you run checkout:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose down
@ -74,7 +74,7 @@ See the topic above, instead of a diff, you run checkout:
docker compose up -d
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose down

Datei anzeigen

@ -44,13 +44,13 @@ MaxScriptNormalize 50M
MaxZipTypeRcg 50M
```
10. Starten Sie den ClamAV Container neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart clamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart clamd-mailcow
@ -73,13 +73,13 @@ DatabaseCustomURL http://sigs.interserver.net/shell.ldb
DatabaseCustomURL http://sigs.interserver.net/whitelist.fp
```
2. Starten Sie den ClamAV Container neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart clamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart clamd-mailcow

Datei anzeigen

@ -44,13 +44,13 @@ MaxScriptNormalize 50M
MaxZipTypeRcg 50M
```
10. Restart ClamAV container:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart clamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart clamd-mailcow
@ -73,13 +73,13 @@ DatabaseCustomURL http://sigs.interserver.net/shell.ldb
DatabaseCustomURL http://sigs.interserver.net/whitelist.fp
```
2. Restart ClamAV container:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart clamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart clamd-mailcow

Datei anzeigen

@ -1,13 +1,13 @@
## Whitelist fĂĽr bestimmte ClamAV-Signaturen
Es kann vorkommen, dass legitime (saubere) Mails von ClamAV blockiert werden (Rspamd markiert die Mail mit `VIRUS_FOUND`). So werden beispielsweise interaktive PDF-Formularanhänge standardmäßig blockiert, da der eingebettete Javascript-Code für schädliche Zwecke verwendet werden könnte. Überprüfen Sie dies anhand der clamd-Protokolle, z.B.:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose logs clamd-mailcow | grep "FOUND"
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose logs clamd-mailcow | grep "FOUND"
@ -26,20 +26,20 @@ echo 'PUA.Pdf.Trojan.EmbeddedJavaScript-1' >> data/conf/clamav/whitelist.ign2
```
Dann starten Sie den clamd-mailcow Service Container in der mailcow UI oder mit docker compose neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart clamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart clamd-mailcow
```
Bereinigen Sie zwischengespeicherte ClamAV-Ergebnisse in Redis:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow /bin/sh
@ -47,7 +47,7 @@ Bereinigen Sie zwischengespeicherte ClamAV-Ergebnisse in Redis:
/data # exit
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow /bin/sh

Datei anzeigen

@ -1,13 +1,13 @@
## Whitelist specific ClamAV signatures
You may find that legitimate (clean) mail is being blocked by ClamAV (Rspamd will flag the mail with `VIRUS_FOUND`). For instance, interactive PDF form attachments are blocked by default because the embedded Javascript code may be used for nefarious purposes. Confirm by looking at the clamd logs, e.g.:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose logs clamd-mailcow | grep "FOUND"
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose logs clamd-mailcow | grep "FOUND"
@ -26,20 +26,20 @@ echo 'PUA.Pdf.Trojan.EmbeddedJavaScript-1' >> data/conf/clamav/whitelist.ign2
```
Then restart the clamd-mailcow service container in the mailcow UI or using docker compose:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart clamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart clamd-mailcow
```
Cleanup cached ClamAV results in Redis:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow /bin/sh
@ -47,7 +47,7 @@ Cleanup cached ClamAV results in Redis:
/data # exit
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow /bin/sh

Datei anzeigen

@ -20,13 +20,13 @@ $service-mailcow:
Abschliessend müssen die geänderten Container automatisch neu erstellt werden:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose up -d

Datei anzeigen

@ -20,13 +20,13 @@ $service-mailcow:
```
Now auto-recreate modified containers:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose up -d

Datei anzeigen

@ -6,4 +6,16 @@ Diese Funktion kann wieder aktiviert werden, indem `ACL_ANYONE` auf `allow` in m
ACL_ANYONE=allow
```
Wenden Sie die Ă„nderungen an, indem Sie `docker compose up -d` ausfĂĽhren.
Wenden Sie die Ă„nderungen an, indem Sie den Docker Stack neustarten mit:
=== "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose (Standalone)"
``` bash
docker-compose up -d
```

Datei anzeigen

@ -6,4 +6,16 @@ This function can be re-enabled by setting `ACL_ANYONE` to `allow` in mailcow.co
ACL_ANYONE=allow
```
Apply the changes by running `docker compose up -d`.
Apply the changes by restarting the stack:
=== "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose (Standalone)"
``` bash
docker-compose up -d
```

Datei anzeigen

@ -1,3 +1,3 @@
Der Dovecot-Parameter `sieve_vacation_dont_check_recipient` - der in mailcow-Konfigurationen vor dem 21. Juli 2021 standardmäßig auf `yes` gesetzt war - erlaubt Urlaubsantworten auch dann, wenn eine Mail an nicht existierende Mailboxen wie Catch-All-Adressen gesendet wird.
Wir haben uns entschlossen, diesen Parameter wieder auf `nein` zu setzen und dem Benutzer zu erlauben, die Empfängeradresse zu spezifizieren, die eine Urlaubsantwort auslöst. Die auslösenden Empfänger können auch in SOGos Autoresponder-Funktion konfiguriert werden.
Wir haben uns entschlossen, diesen Parameter wieder auf `no` zu setzen und dem Benutzer zu erlauben, die Empfängeradresse zu spezifizieren, die eine Urlaubsantwort auslöst. Die auslösenden Empfänger können auch in SOGos Autoresponder-Funktion konfiguriert werden.

Datei anzeigen

@ -6,27 +6,60 @@ Dann wollen wir mal loslegen:
Löschen Sie die Mails eines Benutzers im Junk-Ordner, die **gelesen** und **älter** als 4 Stunden sind
```
docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'Junk' SEEN not SINCE 4h
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'Junk' SEEN not SINCE 4h
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'Junk' SEEN not SINCE 4h
```
Lösche **alle** Mails des Benutzers im Junk-Ordner, die **älter** als 7 Tage sind
```
docker compose exec dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 7d
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 7d
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 7d
```
Löscht **alle** Mails (aller Benutzer) in **allen** Ordnern, die **älter** als 52 Wochen sind (internes Datum der Mail, nicht das Datum, an dem sie auf dem System gespeichert wurde => `before` statt `savedbefore`). Nützlich zum Löschen sehr alter Mails in allen Benutzern und Ordnern (daher besonders nützlich für GDPR-Compliance).
```
docker compose exec dovecot-mailcow doveadm expunge -A mailbox % before 52w
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm expunge -A mailbox % before 52w
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm expunge -A mailbox % before 52w
```
Löschen von Mails in einem benutzerdefinierten Ordner **innerhalb** des Posteingangs eines Benutzers, die **nicht** gekennzeichnet und **älter** als 2 Wochen sind
```
docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'INBOX/custom-folder' not FLAGGED not SINCE 2w
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'INBOX/custom-folder' not FLAGGED not SINCE 2w
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'INBOX/custom-folder' not FLAGGED not SINCE 2w
```
!!! info
Für mögliche [Zeitspannen](https://wiki.dovecot.org/Tools/Doveadm/SearchQuery#section_date_specification) oder [SearchQuery](https://wiki.dovecot.org/Tools/Doveadm/SearchQuery#section_search_keys) schauen Sie bitte in [man doveadm-search-query](https://wiki.dovecot.org/Tools/Doveadm/SearchQuery)
@ -37,15 +70,29 @@ docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mai
Wenn Sie eine solche Aufgabe automatisieren wollen, können Sie einen Cron-Job auf Ihrem Rechner erstellen, der ein Skript wie das folgende aufruft:
```
#!/bin/bash
# Pfad zu mailcow-dockerized, z.B. /opt/mailcow-dockerized
cd /pfad/zu/ihrem/mailcow-dockerized
=== "docker compose (Plugin)"
/usr/local/bin/docker compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 2w
/usr/local/bin/docker compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' SEEN not SINCE 12h
[...]
```
``` bash
#!/bin/bash
# Pfad zu mailcow-dockerized, z.B. /opt/mailcow-dockerized
cd /pfad/zu/ihrer/mailcow-dockerized
docker compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 2w
docker compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' SEEN not SINCE 12h
[...]
```
=== "docker-compose (Standalone)"
``` bash
#!/bin/bash
# Pfad zu mailcow-dockerized, z.B. /opt/mailcow-dockerized
cd /pfad/zu/ihrer/mailcow-dockerized
docker-compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 2w
docker-compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' SEEN not SINCE 12h
[...]
```
Um einen Cronjob zu erstellen, können Sie `crontab -e` ausführen und etwas wie das Folgende einfügen, um ein Skript auszuführen:

Datei anzeigen

@ -6,27 +6,59 @@ That said, let's dive in:
Delete a user's mails inside the junk folder that **are read** and **older** than 4 hours
```
docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'Junk' SEEN not SINCE 4h
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'Junk' SEEN not SINCE 4h
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'Junk' SEEN not SINCE 4h
```
Delete **all** user's mails in the junk folder that are **older** than 7 days
```
docker compose exec dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 7d
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 7d
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 7d
```
Delete **all** mails (of all users) in **all** folders that are **older** than 52 weeks (internal date of the mail, not the date it was saved on the system => `before` instead of `savedbefore`). Useful for deleting very old mails on all users and folders (thus especially useful for GDPR-compliance).
```
docker compose exec dovecot-mailcow doveadm expunge -A mailbox % before 52w
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm expunge -A mailbox % before 52w
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm expunge -A mailbox % before 52w
```
Delete mails inside a custom folder **inside** a user's inbox that are **not** flagged and **older** than 2 weeks
```
docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'INBOX/custom-folder' not FLAGGED not SINCE 2w
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'INBOX/custom-folder' not FLAGGED not SINCE 2w
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'INBOX/custom-folder' not FLAGGED not SINCE 2w
```
!!! info
For possible [time spans](https://wiki.dovecot.org/Tools/Doveadm/SearchQuery#section_date_specification) or [search keys](https://wiki.dovecot.org/Tools/Doveadm/SearchQuery#section_search_keys) have a look at [man doveadm-search-query](https://wiki.dovecot.org/Tools/Doveadm/SearchQuery)
@ -37,15 +69,29 @@ docker compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mai
If you want to automate such a task you can create a cron job on your host that calls a script like the one below:
```
#!/bin/bash
# Path to mailcow-dockerized, e.g. /opt/mailcow-dockerized
cd /path/to/your/mailcow-dockerized
=== "docker compose (Plugin)"
/usr/local/bin/docker compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 2w
/usr/local/bin/docker compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' SEEN not SINCE 12h
[...]
```
``` bash
#!/bin/bash
# Path to mailcow-dockerized, for example: /opt/mailcow-dockerized
cd /path/to/your/mailcow-dockerized
docker compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 2w
docker compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' SEEN not SINCE 12h
[...]
```
=== "docker-compose (Standalone)"
``` bash
#!/bin/bash
# Path to mailcow-dockerized, for example: /opt/mailcow-dockerized
cd /path/to/your/mailcow-dockerized
docker-compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 2w
docker-compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' SEEN not SINCE 12h
[...]
```
To create a cron job you may execute `crontab -e` and insert something like the following to execute a script:

Datei anzeigen

@ -2,6 +2,15 @@ Erstellen Sie eine Datei `data/conf/dovecot/extra.conf` - falls nicht vorhanden
Starten Sie `dovecot-mailcow` neu, um Ihre Ă„nderungen zu ĂĽbernehmen:
```
docker compose restart dovecot-mailcow
```
=== "docker compose (Plugin)"
``` bash
docker compose restart dovecot-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart dovecot-mailcow
```

Datei anzeigen

@ -2,6 +2,14 @@ Create a file `data/conf/dovecot/extra.conf` - if missing - and add your additio
Restart `dovecot-mailcow` to apply your changes:
```
docker compose restart dovecot-mailcow
```
=== "docker compose (Plugin)"
``` bash
docker compose restart dovecot-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart dovecot-mailcow
```

Datei anzeigen

@ -11,25 +11,49 @@ Da wir in Docker laufen und unsere Container mit dem "restart: always" Flag erst
### FTS-bezogene Dovecot-Befehle
```
# Einzelbenutzer
docker compose exec dovecot-mailcow doveadm fts rescan -u user@domain
# alle Benutzer
docker compose exec dovecot-mailcow doveadm fts rescan -A
```
=== "docker compose (Plugin)"
``` bash
# Einzelbenutzer
docker compose exec dovecot-mailcow doveadm fts rescan -u user@domain
# alle Benutzer
docker compose exec dovecot-mailcow doveadm fts rescan -A
```
=== "docker-compose (Standalone)"
``` bash
# Einzelbenutzer
docker-compose exec dovecot-mailcow doveadm fts rescan -u user@domain
# alle Benutzer
docker-compose exec dovecot-mailcow doveadm fts rescan -A
```
Dovecot Wiki: "Scannt, welche Mails im Volltextsuchindex vorhanden sind und vergleicht diese mit den tatsächlich in den Postfächern vorhandenen Mails. Dies entfernt Mails aus dem Index, die bereits gelöscht wurden und stellt sicher, dass der nächste doveadm-Index alle fehlenden Mails (falls vorhanden) indiziert."
Dies indiziert **nicht** eine Mailbox neu. Es repariert im Grunde einen gegebenen Index.
Wenn Sie die Daten sofort neu indizieren wollen, können Sie den folgenden Befehl ausführen, wobei '*' auch eine Postfachmaske wie 'Sent' sein kann. Sie müssen diese Befehle nicht ausführen, aber es wird die Dinge ein wenig beschleunigen:
```
# einzelner Benutzer
docker compose exec dovecot-mailcow doveadm index -u user@domain '*'
# alle Benutzer, aber offensichtlich langsamer und gefährlicher
docker compose exec dovecot-mailcow doveadm index -A '*'
```
=== "docker compose (Plugin)"
``` bash
# einzelner Benutzer
docker compose exec dovecot-mailcow doveadm index -u user@domain '*'
# alle Benutzer, aber offensichtlich langsamer und gefährlicher
docker compose exec dovecot-mailcow doveadm index -A '*'
```
=== "docker-compose (Standalone)"
``` bash
# einzelner Benutzer
docker-compose exec dovecot-mailcow doveadm index -u user@domain '*'
# alle Benutzer, aber offensichtlich langsamer und gefährlicher
docker-compose exec dovecot-mailcow doveadm index -A '*'
```
Dies **wird** einige Zeit in Anspruch nehmen, abhängig von Ihrer Maschine und Solr kann oom ausführen, überwachen Sie es!

Datei anzeigen

@ -12,12 +12,23 @@ Since we run in Docker and create our containers with the "restart: always" flag
### FTS related Dovecot commands
```
# single user
docker compose exec dovecot-mailcow doveadm fts rescan -u user@domain
# all users
docker compose exec dovecot-mailcow doveadm fts rescan -A
```
=== "docker compose (Plugin)"
``` bash
# single user
docker compose exec dovecot-mailcow doveadm fts rescan -u user@domain
# all users
docker compose exec dovecot-mailcow doveadm fts rescan -A
```
=== "docker-compose (Standalone)"
``` bash
# single user
docker-compose exec dovecot-mailcow doveadm fts rescan -u user@domain
# all users
docker-compose exec dovecot-mailcow doveadm fts rescan -A
```
Dovecot Wiki: "Scan what mails exist in the full text search index and compare those to what actually exist in mailboxes. This removes mails from the index that have already been expunged and makes sure that the next doveadm index will index all the missing mails (if any)."
@ -25,12 +36,23 @@ This does **not** re-index a mailbox. It basically repairs a given index.
If you want to re-index data immediately, you can run the followig command, where '*' can also be a mailbox mask like 'Sent'. You do not need to run these commands, but it will speed things up a bit:
```
# single user
docker compose exec dovecot-mailcow doveadm index -u user@domain '*'
# all users, but obviously slower and more dangerous
docker compose exec dovecot-mailcow doveadm index -A '*'
```
=== "docker compose (Plugin)"
``` bash
# single user
docker compose exec dovecot-mailcow doveadm index -u user@domain '*'
# all users, but obviously slower and more dangerous
docker compose exec dovecot-mailcow doveadm index -A '*'
```
=== "docker-compose (Standalone)"
``` bash
# single user
docker-compose exec dovecot-mailcow doveadm index -u user@domain '*'
# all users, but obviously slower and more dangerous
docker-compose exec dovecot-mailcow doveadm index -A '*'
```
This **will** take some time depending on your machine and Solr can run oom, monitor it!

Datei anzeigen

@ -21,15 +21,31 @@ imap_idle_notify_interval = 5 mins
### Dovecot neu laden
Nun laden Sie Dovecot neu:
```
docker compose exec dovecot-mailcow dovecot reload
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow dovecot reload
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow dovecot reload
```
!!! info
Sie können den Wert dieser Einstellung überprüfen mit
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow dovecot -a | grep "imap_idle_notify_interval"
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow dovecot -a | grep "imap_idle_notify_interval"
```
Wenn Sie den Wert nicht geändert haben, sollte er auf 2m stehen. Wenn Sie ihn geändert haben, sollten Sie den neuen Wert sehen.

Datei anzeigen

@ -20,15 +20,32 @@ imap_idle_notify_interval = 5 mins
### Reload Dovecot
Now reload Dovecot:
```
docker compose exec dovecot-mailcow dovecot reload
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow dovecot reload
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow dovecot reload
```
!!! info
You can check the value of this setting with
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow dovecot -a | grep "imap_idle_notify_interval"
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow dovecot -a | grep "imap_idle_notify_interval"
```
If you didn't change it, it should be at 2m. If you did change it, you should see your new value.

Datei anzeigen

@ -3,7 +3,20 @@
Wenn Sie vorhandene maildir-Dateien entschlüsseln/verschlüsseln wollen, können Sie das folgende Skript auf eigene Gefahr verwenden:
Rufen Sie Dovecot auf, indem Sie `docker compose exec dovecot-mailcow /bin/bash` im mailcow-dockerisierten Verzeichnis ausfĂĽhren.
Wechseln Sie in den Dovecot Container, indem Sie folgenden Befehl im mailcow-dockerized Verzeichnis ausfĂĽhren:
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow /bin/bash
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow /bin/bash
```
```
# EntschlĂĽsseln Sie /var/vmail

Datei anzeigen

@ -3,7 +3,19 @@
If you want to decode/encode existing maildir files, you can use the following script at your own risk:
Enter Dovecot by running `docker compose exec dovecot-mailcow /bin/bash` in the mailcow-dockerized location.
Enter Dovecot by running the following command in the mailcow-dockerized location:
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow /bin/bash
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow /bin/bash
```
```
# Decrypt /var/vmail

Datei anzeigen

@ -21,9 +21,17 @@ Die neue Mailbox im öffentlichen Namensraum wird von den Benutzern automatisch
Um allen authentifizierten Benutzern vollen Zugriff auf das neue Postfach (nicht auf den gesamten Namespace) zu gewähren, führen Sie aus:
```
docker compose exec dovecot-mailcow doveadm acl set -A "Public/Develcow" "authenticated" lookup read write write-seen write-deleted insert post delete expunge create
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm acl set -A "Public/Develcow" "authenticated" lookup read write write-seen write-deleted insert post delete expunge create
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm acl set -A "Public/Develcow" "authenticated" lookup read write write-seen write-deleted insert post delete expunge create
```
Passen Sie den Befehl an Ihre Bedürfnisse an, wenn Sie detailliertere Rechte pro Benutzer vergeben möchten (verwenden Sie z.B. `-u user@domain` anstelle von `-A`).

Datei anzeigen

@ -21,9 +21,18 @@ The new mailbox in the public namespace will be auto-subscribed by users.
To allow all authenticated users access full to that new mailbox (not the whole namespace), run:
```
docker compose exec dovecot-mailcow doveadm acl set -A "Public/Develcow" "authenticated" lookup read write write-seen write-deleted insert post delete expunge create
```
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow doveadm acl set -A "Public/Develcow" "authenticated" lookup read write write-seen write-deleted insert post delete expunge create
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow doveadm acl set -A "Public/Develcow" "authenticated" lookup read write write-seen write-deleted insert post delete expunge create
```
Adjust the command to your needs if you like to assign more granular rights per user (use `-u user@domain` instead of `-A` for example).

Datei anzeigen

@ -11,7 +11,20 @@ DOVECOT_MASTER_USER=mymasteruser
DOVECOT_MASTER_PASS=mysecretpass
```
FĂĽhren Sie `docker compose up -d` aus, um Ihre Ă„nderungen zu ĂĽbernehmen.
FĂĽhren Sie folgenden Befehl aus, um Ihre Ă„nderungen zu ĂĽbernehmen:
=== "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose (Standalone)"
``` bash
docker-compose up -d
```
Der statische Master-Benutzername wird zu `DOVECOT_MASTER_USER@mailcow.local` erweitert.

Datei anzeigen

@ -11,7 +11,19 @@ DOVECOT_MASTER_USER=mymasteruser
DOVECOT_MASTER_PASS=mysecretpass
```
Run `docker compose up -d` to apply your changes.
Run the command below to apply your changes:
=== "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose (Standalone)"
``` bash
docker-compose up -d
```
The static master username will be expanded to `DOVECOT_MASTER_USER@mailcow.local`.

Datei anzeigen

@ -3,7 +3,7 @@
!!! warning
Newer Docker versions seem to complain about existing volumes. You can fix this temporarily by removing the existing volume and start mailcow with the override file. But it seems to be problematic after a reboot (needs to be confirmed).
An easy, dirty, yet stable workaround is to stop mailcow (`docker compose down`), remove `/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data` and create a new link to your remote filesystem location, for example:
An easy, dirty, yet stable workaround is to stop mailcow, remove `/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data` and create a new link to your remote filesystem location, for example:
```
mv /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data_backup

Datei anzeigen

@ -110,14 +110,14 @@ Dieser Dateiname muss keine ".conf"-Erweiterung haben, sondern folgt dem Muster
Wenn PHP in eine benutzerdefinierte Site eingebunden werden soll, verwenden Sie bitte den PHP-FPM-Listener auf phpfpm:9002 oder erstellen Sie einen neuen Listener in `data/conf/phpfpm/php-fpm.d/pools.conf`.
Starten Sie Nginx neu (und PHP-FPM, falls ein neuer Listener erstellt wurde):
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart nginx-mailcow
docker compose restart php-fpm-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart nginx-mailcow

Datei anzeigen

@ -111,14 +111,14 @@ This filename does not need to have a ".conf" extension but follows the pattern
If PHP is to be included in a custom site, please use the PHP-FPM listener on phpfpm:9002 or create a new listener in `data/conf/phpfpm/php-fpm.d/pools.conf`.
Restart Nginx (and PHP-FPM, if a new listener was created):
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart nginx-mailcow
docker compose restart php-fpm-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart nginx-mailcow

Datei anzeigen

@ -1,13 +1,13 @@
Ă–ffnen Sie `data/conf/postfix/extra.cf` und setzen Sie das `message_size_limit` entsprechend in Bytes. Siehe `main.cf` fĂĽr den Standardwert.
Starten Sie Postfix neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart postfix-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart postfix-mailcow

Datei anzeigen

@ -1,13 +1,13 @@
Open `data/conf/postfix/extra.cf` and set the `message_size_limit` accordingly in bytes. See `main.cf` for the default value.
Restart Postfix:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart postfix-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart postfix-mailcow

Datei anzeigen

@ -19,13 +19,13 @@ smtpd_sender_restrictions = check_sasl_access hash:/opt/postfix/conf/check_sasl_
```
Postmap auf check_sasl_access ausfĂĽhren:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec postfix-mailcow postmap /opt/postfix/conf/check_sasl_access
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec postfix-mailcow postmap /opt/postfix/conf/check_sasl_access

Datei anzeigen

@ -19,13 +19,13 @@ smtpd_sender_restrictions = check_sasl_access hash:/opt/postfix/conf/check_sasl_
```
Run postmap on check_sasl_access:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec postfix-mailcow postmap /opt/postfix/conf/check_sasl_access
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec postfix-mailcow postmap /opt/postfix/conf/check_sasl_access

Datei anzeigen

@ -6,13 +6,13 @@ Syslog-ng wurde so konfiguriert, dass es diese Warnungen ausblendet, während Po
Starten Sie `postfix-mailcow` neu, um Ihre Ă„nderungen zu ĂĽbernehmen:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart postfix-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart postfix-mailcow

Datei anzeigen

@ -6,13 +6,13 @@ Syslog-ng was configured to hide those warnings while Postfix is running, to not
Restart `postfix-mailcow` to apply your changes:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart postfix-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart postfix-mailcow

Datei anzeigen

@ -3,13 +3,13 @@ Redis wird als Key-Value-Speicher fĂĽr die Einstellungen und Daten von rspamd un
## Client
Um sich mit dem redis cli zu verbinden, fĂĽhren Sie aus:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow redis-cli
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow redis-cli
@ -22,7 +22,7 @@ Hier sind einige nĂĽtzliche Befehle fĂĽr den redis-cli zur Fehlersuche:
##### MONITOR
Ăśberwacht alle vom Server empfangenen Anfragen in Echtzeit:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
#docker compose exec redis-mailcow redis-cli
@ -33,7 +33,7 @@ Hier sind einige nĂĽtzliche Befehle fĂĽr den redis-cli zur Fehlersuche:
[...]
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
#docker-compose exec redis-mailcow redis-cli

Datei anzeigen

@ -3,13 +3,13 @@ Redis is used as a key-value store for rspamd's and (some of) mailcow's settings
## Client
To connect to the redis cli execute:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow redis-cli
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow redis-cli
@ -22,7 +22,7 @@ Here are some useful commands for the redis-cli for debugging:
##### MONITOR
Listens for all requests received by the server in real time:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
#docker compose exec redis-mailcow redis-cli
@ -33,7 +33,7 @@ Listens for all requests received by the server in real time:
[...]
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
#docker-compose exec redis-mailcow redis-cli

Datei anzeigen

@ -16,7 +16,7 @@ Sie können auch die Web-UI von Rspamd verwenden, um Ham und/oder Spam zu lernen
### Spam oder Ham aus bestehendem Verzeichnis lernen
Sie können einen Einzeiler verwenden, um Mails im Klartextformat (unkomprimiert) zu lernen:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
# Ham
@ -25,7 +25,7 @@ Sie können einen Einzeiler verwenden, um Mails im Klartextformat (unkomprimiert
for file in /my/folder/.Junk/cur/*; do docker exec -i $(docker compose ps -q rspamd-mailcow) rspamc learn_spam < $file; done
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
# Ham
@ -52,14 +52,14 @@ cp /var/lib/docker/volumes/mailcowdockerized_redis-vol-1/_data/dump.rdb /root/
```
**Bayes-Daten zurĂĽcksetzen**
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow sh -c 'redis-cli --scan --pattern BAYES_* | xargs redis-cli del'
docker compose exec redis-mailcow sh -c 'redis-cli --scan --pattern RS* | xargs redis-cli del'
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow sh -c 'redis-cli --scan --pattern BAYES_* | xargs redis-cli del'
@ -67,20 +67,20 @@ cp /var/lib/docker/volumes/mailcowdockerized_redis-vol-1/_data/dump.rdb /root/
```
**Neurale Daten zurĂĽcksetzen**
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow sh -c 'redis-cli --scan --pattern rn_* | xargs redis-cli del'
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow sh -c 'redis-cli --scan --pattern rn_* | xargs redis-cli del'
```
**Fuzzy-Daten zurĂĽcksetzen**
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
# Wir mĂĽssen zuerst das redis-cli eingeben:
@ -89,7 +89,7 @@ cp /var/lib/docker/volumes/mailcowdockerized_redis-vol-1/_data/dump.rdb /root/
127.0.0.1:6379> EVAL "for i, name in ipairs(redis.call('KEYS', ARGV[1])) do redis.call('DEL', name); end" 0 fuzzy*
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
# Wir mĂĽssen zuerst das redis-cli eingeben:
@ -109,14 +109,14 @@ Wenn redis-cli sich beschwert ĂĽber...
...das Schlüsselmuster nicht gefunden wurde und somit keine Daten zum Löschen vorhanden sind - ist es in Ordnung.
## CLI-Werkzeuge
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec rspamd-mailcow rspamc --help
docker compose exec rspamd-mailcow rspamadm --help
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec rspamd-mailcow rspamc --help
@ -138,13 +138,13 @@ enabled = false;
```
Speichern Sie die Datei und starten Sie "rspamd-mailcow" neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -161,13 +161,13 @@ greylist = 7;
```
Speichern Sie die Datei und starten Sie "rspamd-mailcow" neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -176,7 +176,7 @@ Speichern Sie die Datei und starten Sie "rspamd-mailcow" neu:
Bestehende Einstellungen der Benutzer werden nicht ĂĽberschrieben!
Um benutzerdefinierte Schwellenwerte zurĂĽckzusetzen, fĂĽhren Sie aus:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
source mailcow.conf
@ -185,7 +185,7 @@ Um benutzerdefinierte Schwellenwerte zurĂĽckzusetzen, fĂĽhren Sie aus:
docker compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e "delete from filterconf where option = 'highspamlevel' or option = 'lowspamlevel' and object = 'only-this-mailbox@example.org';"
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
source mailcow.conf
@ -203,13 +203,13 @@ reject_message = "Meine eigene Ablehnungsnachricht";
```
Speichern Sie die Datei und starten Sie Rspamd neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -233,13 +233,13 @@ GLOBAL_RCPT_BL {
```
3. Speichern Sie die Datei und starten Sie Rspamd neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -254,13 +254,13 @@ discard_on_reject = true;
```
Starten Sie Rspamd neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -269,7 +269,7 @@ Starten Sie Rspamd neu:
## Lösche alle Ratelimit-Schlüssel
Wenn Sie das UI nicht verwenden wollen und stattdessen alle Schlüssel in der Redis-Datenbank löschen wollen, können Sie redis-cli für diese Aufgabe verwenden:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow sh
@ -277,7 +277,7 @@ Wenn Sie das UI nicht verwenden wollen und stattdessen alle SchlĂĽssel in der Re
redis-cli --scan --pattern RL* | xargs redis-cli unlink
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow sh
@ -287,13 +287,13 @@ Wenn Sie das UI nicht verwenden wollen und stattdessen alle SchlĂĽssel in der Re
Starten Sie Rspamd neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -302,7 +302,7 @@ Starten Sie Rspamd neu:
## Erneutes Senden von Quarantäne-Benachrichtigungen auslösen
Sollte nur zur Fehlersuche verwendet werden!
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow bash
@ -311,7 +311,7 @@ Sollte nur zur Fehlersuche verwendet werden!
quarantine_notify.py
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow bash
@ -335,13 +335,13 @@ nrows = 1000; # Ă„ndern Sie diesen Wert
```
Starten Sie anschlieĂźend Rspamd neu:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow

Datei anzeigen

@ -16,7 +16,7 @@ You can also use Rspamd's web UI to learn ham and / or spam or to adjust certain
### Learn Spam or Ham from existing directory
You can use a one-liner to learn mail in plain-text (uncompressed) format:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
# Ham
@ -25,7 +25,7 @@ You can use a one-liner to learn mail in plain-text (uncompressed) format:
for file in /my/folder/.Junk/cur/*; do docker exec -i $(docker compose ps -q rspamd-mailcow) rspamc learn_spam < $file; done
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
# Ham
@ -52,14 +52,14 @@ cp /var/lib/docker/volumes/mailcowdockerized_redis-vol-1/_data/dump.rdb /root/
```
**Reset Bayes data**
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow sh -c 'redis-cli --scan --pattern BAYES_* | xargs redis-cli del'
docker compose exec redis-mailcow sh -c 'redis-cli --scan --pattern RS* | xargs redis-cli del'
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow sh -c 'redis-cli --scan --pattern BAYES_* | xargs redis-cli del'
@ -67,20 +67,20 @@ cp /var/lib/docker/volumes/mailcowdockerized_redis-vol-1/_data/dump.rdb /root/
```
**Reset Neural data**
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow sh -c 'redis-cli --scan --pattern rn_* | xargs redis-cli del'
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow sh -c 'redis-cli --scan --pattern rn_* | xargs redis-cli del'
```
**Reset Fuzzy data**
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
# We need to enter the redis-cli first:
@ -89,7 +89,7 @@ cp /var/lib/docker/volumes/mailcowdockerized_redis-vol-1/_data/dump.rdb /root/
127.0.0.1:6379> EVAL "for i, name in ipairs(redis.call('KEYS', ARGV[1])) do redis.call('DEL', name); end" 0 fuzzy*
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
# We need to enter the redis-cli first:
@ -110,14 +110,14 @@ If redis-cli complains about...
## CLI tools
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec rspamd-mailcow rspamc --help
docker compose exec rspamd-mailcow rspamadm --help
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec rspamd-mailcow rspamc --help
@ -139,13 +139,13 @@ enabled = false;
```
Save the file and restart "rspamd-mailcow":
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -162,13 +162,13 @@ greylist = 7;
```
Save the file and restart "rspamd-mailcow":
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -177,7 +177,7 @@ Save the file and restart "rspamd-mailcow":
Existing settings of users will not be overwritten!
To reset custom defined thresholds, run:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
source mailcow.conf
@ -186,7 +186,7 @@ To reset custom defined thresholds, run:
docker compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e "delete from filterconf where option = 'highspamlevel' or option = 'lowspamlevel' and object = 'only-this-mailbox@example.org';"
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
source mailcow.conf
@ -210,13 +210,13 @@ reject_message = "My custom reject message";
```
Save the file and restart Rspamd:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -240,13 +240,13 @@ GLOBAL_RCPT_BL {
```
3. Save the file and restart Rspamd:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -261,13 +261,13 @@ discard_on_reject = true;
```
Restart Rspamd:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -276,7 +276,7 @@ Restart Rspamd:
## Wipe all ratelimit keys
If you don't want to use the UI and instead wipe all keys in the Redis database, you can use redis-cli for that task:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec redis-mailcow sh
@ -284,7 +284,7 @@ If you don't want to use the UI and instead wipe all keys in the Redis database,
redis-cli --scan --pattern RL* | xargs redis-cli unlink
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec redis-mailcow sh
@ -293,13 +293,13 @@ If you don't want to use the UI and instead wipe all keys in the Redis database,
```
Restart Rspamd:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow
@ -308,7 +308,7 @@ Restart Rspamd:
## Trigger a resend of quarantine notifications
Should be used for debugging only!
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose exec dovecot-mailcow bash
@ -317,7 +317,7 @@ Should be used for debugging only!
quarantine_notify.py
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose exec dovecot-mailcow bash
@ -341,13 +341,13 @@ nrows = 1000; # change this value
```
Restart Rspamd afterwards:
=== "docker compose"
=== "docker compose (Plugin)"
``` bash
docker compose restart rspamd-mailcow
```
=== "docker-compose"
=== "docker-compose (Standalone)"
``` bash
docker-compose restart rspamd-mailcow

Datei anzeigen

@ -1,6 +1,6 @@
{% extends "base.html" %}
{% block announce %}
<center><h4>Alle Befehle sind gemäß der Syntax des <a href="https://docs.docker.com/compose/install/linux/">Docker Compose Plugins</a> beschrieben.<br>
All commands are written according to the <a href="https://docs.docker.com/compose/install/linux/">Docker Compose Plugin</a> syntax.</h4></center>
<center><h4>Alle Befehle sind gemäß der Syntax des <a href="https://docs.docker.com/compose/install/linux/">Docker Compose Plugin</a> und der <a href="https://docs.docker.com/compose/install/other/">Standalone Variante</a> anschaubar.<br>
All Commands are available according to the <a href="https://docs.docker.com/compose/install/linux/">Docker Compose Plugin</a> and the <a href="https://docs.docker.com/compose/install/other/">Standalone Version</a><br></h4></center>
{% endblock %}