Fixed docker-compose.yml renaming

Dieser Commit ist enthalten in:
Niklas Meyer 2022-06-02 15:19:55 +02:00
Ursprung eb32e023ba
Commit 358aace692
45 geänderte Dateien mit 75 neuen und 75 gelöschten Zeilen

Datei anzeigen

@ -8,4 +8,4 @@ docker compose down -v --rmi all --remove-orphans
- **-v** Entfernt benannte Volumes, die im Abschnitt `volumes` der Compose-Datei deklariert sind, und anonyme Volumes, die an Container angehängt sind. - **-v** Entfernt benannte Volumes, die im Abschnitt `volumes` der Compose-Datei deklariert sind, und anonyme Volumes, die an Container angehängt sind.
- **--rmi <Typ>** Images entfernen. Der Typ muss einer der folgenden sein: `all`: Entfernt alle Images, die von einem beliebigen Dienst verwendet werden. `local`: Entfernt nur Bilder, die kein benutzerdefiniertes Tag haben, das durch das Feld "image" gesetzt wurde. - **--rmi <Typ>** Images entfernen. Der Typ muss einer der folgenden sein: `all`: Entfernt alle Images, die von einem beliebigen Dienst verwendet werden. `local`: Entfernt nur Bilder, die kein benutzerdefiniertes Tag haben, das durch das Feld "image" gesetzt wurde.
- **--remove-orphans** Entfernt Container fĂĽr Dienste, die nicht in der Compose-Datei definiert sind. - **--remove-orphans** Entfernt Container fĂĽr Dienste, die nicht in der Compose-Datei definiert sind.
- Standardmäßig entfernt `docker compose down` nur derzeit aktive Container und Netzwerke, die in der Datei `docker compose.yml` definiert sind. - Standardmäßig entfernt `docker compose down` nur derzeit aktive Container und Netzwerke, die in der Datei `docker-compose.yml` definiert sind.

Datei anzeigen

@ -8,4 +8,4 @@ docker compose down -v --rmi all --remove-orphans
- **-v** Remove named volumes declared in the `volumes` section of the Compose file and anonymous volumes attached to containers. - **-v** Remove named volumes declared in the `volumes` section of the Compose file and anonymous volumes attached to containers.
- **--rmi <type>** Remove images. Type must be one of: `all`: Remove all images used by any service. `local`: Remove only images that don't have a custom tag set by the `image` field. - **--rmi <type>** Remove images. Type must be one of: `all`: Remove all images used by any service. `local`: Remove only images that don't have a custom tag set by the `image` field.
- **--remove-orphans** Remove containers for services not defined in the compose file. - **--remove-orphans** Remove containers for services not defined in the compose file.
- By default `docker compose down` only removes currently active containers and networks defined in the `docker compose.yml`. - By default `docker compose down` only removes currently active containers and networks defined in the `docker-compose.yml`.

Datei anzeigen

@ -110,7 +110,7 @@ Some updates modify mailcow.conf and add new parameters. It is hard to keep trac
**Whenever you run into trouble and strange phenomena, please check your MTU.** **Whenever you run into trouble and strange phenomena, please check your MTU.**
Edit `docker compose.yml` and change the network settings according to your MTU. Edit `docker-compose.yml` and change the network settings according to your MTU.
Add the new driver_opts parameter like this: Add the new driver_opts parameter like this:
``` ```
networks: networks:

Datei anzeigen

@ -1,7 +1,7 @@
Sie mĂĽssen die Override-Datei mit den entsprechenden Build-Tags in den mailcow: dockerized Root-Ordner (d.h. `/opt/mailcow-dockerized`) kopieren: Sie mĂĽssen die Override-Datei mit den entsprechenden Build-Tags in den mailcow: dockerized Root-Ordner (d.h. `/opt/mailcow-dockerized`) kopieren:
``` ```
cp helper-scripts/docker compose.override.yml.d/BUILD_FLAGS/docker compose.override.yml docker compose.override.yml cp helper-scripts/docker-compose.override.yml.d/BUILD_FLAGS/docker-compose.override.yml docker-compose.override.yml
``` ```
Nehmen Sie Ihre Ă„nderungen in `data/Dockerfiles/$service` vor und erstellen Sie das Image lokal: Nehmen Sie Ihre Ă„nderungen in `data/Dockerfiles/$service` vor und erstellen Sie das Image lokal:

Datei anzeigen

@ -1,7 +1,7 @@
You need to copy the override file with corresponding build tags to the mailcow: dockerized root folder (i.e. `/opt/mailcow-dockerized`): You need to copy the override file with corresponding build tags to the mailcow: dockerized root folder (i.e. `/opt/mailcow-dockerized`):
``` ```
cp helper-scripts/docker compose.override.yml.d/BUILD_FLAGS/docker compose.override.yml docker compose.override.yml cp helper-scripts/docker-compose.override.yml.d/BUILD_FLAGS/docker-compose.override.yml docker-compose.override.yml
``` ```
Make your changes in `data/Dockerfiles/$service` and build the image locally: Make your changes in `data/Dockerfiles/$service` and build the image locally:

Datei anzeigen

@ -56,7 +56,7 @@ Um einen Cronjob zu erstellen, können Sie `crontab -e` ausführen und etwas wie
### ĂĽber Docker Job Scheduler ### ĂĽber Docker Job Scheduler
Um dies mit einem Docker-Job-Scheduler zu archivieren, verwenden Sie diese docker compose.override.yml mit Ihrer Mailcow: Um dies mit einem Docker-Job-Scheduler zu archivieren, verwenden Sie diese docker-compose.override.yml mit Ihrer Mailcow:
``` ```
@ -82,7 +82,7 @@ services:
``` ```
Der Job-Controller braucht nur Zugriff auf den Docker Control Socket, um das Verhalten von "exec" zu emulieren. Dann fügen wir unserem Dovecot-Container ein paar Labels hinzu, um den Job-Scheduler zu aktivieren und ihm in einem Cron-kompatiblen Scheduling-Format mitzuteilen, wann er laufen soll. Wenn Sie Probleme mit dem Scheduling-String haben, können Sie [crontab guru](https://crontab.guru/) verwenden. Der Job-Controller braucht nur Zugriff auf den Docker Control Socket, um das Verhalten von "exec" zu emulieren. Dann fügen wir unserem Dovecot-Container ein paar Labels hinzu, um den Job-Scheduler zu aktivieren und ihm in einem Cron-kompatiblen Scheduling-Format mitzuteilen, wann er laufen soll. Wenn Sie Probleme mit dem Scheduling-String haben, können Sie [crontab guru](https://crontab.guru/) verwenden.
Diese docker compose.override.yml löscht jeden Tag um 4 Uhr morgens alle Mails, die älter als 2 Wochen sind, aus dem Ordner "Junk". Um zu sehen, ob alles richtig gelaufen ist, können Sie nicht nur in Ihrer Mailbox nachsehen, sondern auch im Docker-Log von Ofelia, ob es etwa so aussieht: Diese docker-compose.override.yml löscht jeden Tag um 4 Uhr morgens alle Mails, die älter als 2 Wochen sind, aus dem Ordner "Junk". Um zu sehen, ob alles richtig gelaufen ist, können Sie nicht nur in Ihrer Mailbox nachsehen, sondern auch im Docker-Log von Ofelia, ob es etwa so aussieht:
``` ```
common.go:124 â–¶ NOTICE [Job "dovecot-expunge-trash" (8759567efa66)] Started - doveadm expunge -A mailbox 'Junk' savedbefore 2w, common.go:124 â–¶ NOTICE [Job "dovecot-expunge-trash" (8759567efa66)] Started - doveadm expunge -A mailbox 'Junk' savedbefore 2w,

Datei anzeigen

@ -56,7 +56,7 @@ To create a cron job you may execute `crontab -e` and insert something like the
### via Docker job scheduler ### via Docker job scheduler
To archive this with a docker job scheduler use this docker compose.override.yml with your mailcow: To archive this with a docker job scheduler use this docker-compose.override.yml with your mailcow:
``` ```
version: '2.1' version: '2.1'
@ -81,7 +81,7 @@ services:
``` ```
The job controller just need access to the docker control socket to be able to emulate the behavior of "exec". Then we add a few label to our dovecot-container to activate the job scheduler and tell him in a cron compatible scheduling format when to run. If you struggle with that schedule string you can use [crontab guru](https://crontab.guru/). The job controller just need access to the docker control socket to be able to emulate the behavior of "exec". Then we add a few label to our dovecot-container to activate the job scheduler and tell him in a cron compatible scheduling format when to run. If you struggle with that schedule string you can use [crontab guru](https://crontab.guru/).
This docker compose.override.yml deletes all mails older then 2 weeks from the "Junk" folder every day at 4 am. To see if things ran proper, you can not only see in your mailbox but also check Ofelia's docker log if it looks something like this: This docker-compose.override.yml deletes all mails older then 2 weeks from the "Junk" folder every day at 4 am. To see if things ran proper, you can not only see in your mailbox but also check Ofelia's docker log if it looks something like this:
``` ```
common.go:124 â–¶ NOTICE [Job "dovecot-expunge-trash" (8759567efa66)] Started - doveadm expunge -A mailbox 'Junk' savedbefore 2w, common.go:124 â–¶ NOTICE [Job "dovecot-expunge-trash" (8759567efa66)] Started - doveadm expunge -A mailbox 'Junk' savedbefore 2w,

Datei anzeigen

@ -16,7 +16,7 @@ Starten Sie anschlieĂźend mailcow.
## Der "alte" Weg ## Der "alte" Weg
Wenn man einen anderen Ordner für das vmail-Volume verwenden möchte, kann man eine `docker compose.override.yml` Datei erstellen und den folgenden Inhalt hinzufügen: Wenn man einen anderen Ordner für das vmail-Volume verwenden möchte, kann man eine `docker-compose.override.yml` Datei erstellen und den folgenden Inhalt hinzufügen:
``` ```
version: '2.1' version: '2.1'
@ -52,7 +52,7 @@ volumes:
- Kopieren Sie den Inhalt des `Mountpoint`-Ordners an den neuen Speicherort (z.B. `/data/mailcow/vmail`) mit `cp -a`, `rsync -a` oder einem ähnlichen, nicht strikten Kopierbefehl - Kopieren Sie den Inhalt des `Mountpoint`-Ordners an den neuen Speicherort (z.B. `/data/mailcow/vmail`) mit `cp -a`, `rsync -a` oder einem ähnlichen, nicht strikten Kopierbefehl
- Stoppen Sie mailcow durch AusfĂĽhren von `docker compose down` aus Ihrem mailcow-Stammverzeichnis (z.B. `/opt/mailcow-dockerized`) - Stoppen Sie mailcow durch AusfĂĽhren von `docker compose down` aus Ihrem mailcow-Stammverzeichnis (z.B. `/opt/mailcow-dockerized`)
- Erstellen Sie die Datei `docker compose.override.yml`, bearbeiten Sie den Gerätepfad entsprechend - Erstellen Sie die Datei `docker-compose.override.yml`, bearbeiten Sie den Gerätepfad entsprechend
- Löschen Sie den aktuellen vmail-Ordner: `docker volume rm mailcowdockerized_vmail-vol-1` - Löschen Sie den aktuellen vmail-Ordner: `docker volume rm mailcowdockerized_vmail-vol-1`
- Starten Sie mailcow durch AusfĂĽhren von `docker compose up -d` aus Ihrem mailcow-Stammverzeichnis (z.B. `/opt/mailcow-dockerized`) - Starten Sie mailcow durch AusfĂĽhren von `docker compose up -d` aus Ihrem mailcow-Stammverzeichnis (z.B. `/opt/mailcow-dockerized`)

Datei anzeigen

@ -16,7 +16,7 @@ Start mailcow afterwards.
## The "old" way ## The "old" way
If you want to use another folder for the vmail-volume, you can create a `docker compose.override.yml` file and add the following content: If you want to use another folder for the vmail-volume, you can create a `docker-compose.override.yml` file and add the following content:
``` ```
version: '2.1' version: '2.1'
@ -52,6 +52,6 @@ volumes:
- Copy the content of the `Mountpoint` folder to the new location (e.g. `/data/mailcow/vmail`) using `cp -a`, `rsync -a` or a similar non strcuture breaking copy command - Copy the content of the `Mountpoint` folder to the new location (e.g. `/data/mailcow/vmail`) using `cp -a`, `rsync -a` or a similar non strcuture breaking copy command
- Stop mailcow by executing `docker compose down` from within your mailcow root folder (e.g. `/opt/mailcow-dockerized`) - Stop mailcow by executing `docker compose down` from within your mailcow root folder (e.g. `/opt/mailcow-dockerized`)
- Create the file `docker compose.override.yml`, edit the device path accordingly - Create the file `docker-compose.override.yml`, edit the device path accordingly
- Delete the current vmail folder: `docker volume rm mailcowdockerized_vmail-vol-1` - Delete the current vmail folder: `docker volume rm mailcowdockerized_vmail-vol-1`
- Start mailcow by executing `docker compose up -d` from within your mailcow root folder (e.g. `/opt/mailcow-dockerized`) - Start mailcow by executing `docker compose up -d` from within your mailcow root folder (e.g. `/opt/mailcow-dockerized`)

Datei anzeigen

@ -24,7 +24,7 @@ for file in /my/folder/cur/*; do docker exec -i $(docker compose ps -q rspamd-ma
for file in /my/folder/.Junk/cur/*; do docker exec -i $(docker compose ps -q rspamd-mailcow) rspamc learn_spam < $file; done for file in /my/folder/.Junk/cur/*; do docker exec -i $(docker compose ps -q rspamd-mailcow) rspamc learn_spam < $file; done
``` ```
Erwägen Sie, einen lokalen Ordner als neues Volume an `rspamd-mailcow` in `docker compose.yml` anzuhängen und die gegebenen Dateien innerhalb des Containers zu lernen. Dies kann als Workaround verwendet werden, um komprimierte Daten mit zcat zu parsen. Beispiel: Erwägen Sie, einen lokalen Ordner als neues Volume an `rspamd-mailcow` in `docker-compose.yml` anzuhängen und die gegebenen Dateien innerhalb des Containers zu lernen. Dies kann als Workaround verwendet werden, um komprimierte Daten mit zcat zu parsen. Beispiel:
``bash ``bash
for file in /data/old_mail/.Junk/cur/*; do rspamc learn_spam < zcat $file; done for file in /data/old_mail/.Junk/cur/*; do rspamc learn_spam < zcat $file; done

Datei anzeigen

@ -24,7 +24,7 @@ for file in /my/folder/cur/*; do docker exec -i $(docker compose ps -q rspamd-ma
for file in /my/folder/.Junk/cur/*; do docker exec -i $(docker compose ps -q rspamd-mailcow) rspamc learn_spam < $file; done for file in /my/folder/.Junk/cur/*; do docker exec -i $(docker compose ps -q rspamd-mailcow) rspamc learn_spam < $file; done
``` ```
Consider attaching a local folder as new volume to `rspamd-mailcow` in `docker compose.yml` and learn given files inside the container. This can be used as workaround to parse compressed data with zcat. Example: Consider attaching a local folder as new volume to `rspamd-mailcow` in `docker-compose.yml` and learn given files inside the container. This can be used as workaround to parse compressed data with zcat. Example:
```bash ```bash
for file in /data/old_mail/.Junk/cur/*; do rspamc learn_spam < zcat $file; done for file in /data/old_mail/.Junk/cur/*; do rspamc learn_spam < zcat $file; done

Datei anzeigen

@ -24,7 +24,7 @@ copy([].slice.call(document.styleSheets)
7. Ă–ffnen Sie den Texteditor und fĂĽgen Sie die Daten aus der Zwischenablage ein (Strg+V), Sie sollten ein minimiertes CSS erhalten, speichern Sie es 7. Ă–ffnen Sie den Texteditor und fĂĽgen Sie die Daten aus der Zwischenablage ein (Strg+V), Sie sollten ein minimiertes CSS erhalten, speichern Sie es
8. kopieren Sie die CSS-Datei auf den Mailcow-Server `data/conf/sogo/custom-theme.css` 8. kopieren Sie die CSS-Datei auf den Mailcow-Server `data/conf/sogo/custom-theme.css`
9. editiere `data/conf/sogo/sogo.conf` und setze `SOGoUIxDebugEnabled = NO;` 9. editiere `data/conf/sogo/sogo.conf` und setze `SOGoUIxDebugEnabled = NO;`
10. Anhängen/Erstellen von `docker compose.override.yml` mit: 10. Anhängen/Erstellen von `docker-compose.override.yml` mit:
``` ```
Version: '2.1' Version: '2.1'
@ -60,7 +60,7 @@ und ersetzen Sie es durch:
``` ```
$mdThemingProvider.theme('default'); $mdThemingProvider.theme('default');
``` ```
3. Entfernen Sie aus `docker compose.override.yml` Volume Mount in `sogo-mailcow`: 3. Entfernen Sie aus `docker-compose.override.yml` Volume Mount in `sogo-mailcow`:
``` ```
- ./data/conf/sogo/custom-theme.css:/usr/lib/GNUstep/SOGo/WebServerResources/css/theme-default.css:z - ./data/conf/sogo/custom-theme.css:/usr/lib/GNUstep/SOGo/WebServerResources/css/theme-default.css:z
``` ```

Datei anzeigen

@ -24,7 +24,7 @@ copy([].slice.call(document.styleSheets)
7. open text editor and paste data from clipboard (Ctrl+V), you should get minified CSS, save it 7. open text editor and paste data from clipboard (Ctrl+V), you should get minified CSS, save it
8. copy CSS file to mailcow server `data/conf/sogo/custom-theme.css` 8. copy CSS file to mailcow server `data/conf/sogo/custom-theme.css`
9. edit `data/conf/sogo/sogo.conf` and set `SOGoUIxDebugEnabled = NO;` 9. edit `data/conf/sogo/sogo.conf` and set `SOGoUIxDebugEnabled = NO;`
10. append/create `docker compose.override.yml` with: 10. append/create `docker-compose.override.yml` with:
``` ```
version: '2.1' version: '2.1'
@ -60,7 +60,7 @@ and replace it with:
``` ```
$mdThemingProvider.theme('default'); $mdThemingProvider.theme('default');
``` ```
3. remove from `docker compose.override.yml` volume mount in `sogo-mailcow`: 3. remove from `docker-compose.override.yml` volume mount in `sogo-mailcow`:
``` ```
- ./data/conf/sogo/custom-theme.css:/usr/lib/GNUstep/SOGo/WebServerResources/css/theme-default.css:z - ./data/conf/sogo/custom-theme.css:/usr/lib/GNUstep/SOGo/WebServerResources/css/theme-default.css:z
``` ```

Datei anzeigen

@ -26,9 +26,9 @@ docker compose restart unbound-mailcow
``` ```
cd /opt/mailcow-dockerized cd /opt/mailcow-dockerized
cp helper-scripts/docker compose.override.yml.d/EXTERNAL_DNS/docker compose.override.yml . cp helper-scripts/docker-compose.override.yml.d/EXTERNAL_DNS/docker-compose.override.yml .
``` ```
Bearbeiten Sie `docker compose.override.yml` und passen Sie die IP an. Bearbeiten Sie `docker-compose.override.yml` und passen Sie die IP an.
FĂĽhren Sie `docker compose down ; docker compose up -d` aus. FĂĽhren Sie `docker compose down ; docker compose up -d` aus.

Datei anzeigen

@ -26,9 +26,9 @@ docker compose restart unbound-mailcow
``` ```
cd /opt/mailcow-dockerized cd /opt/mailcow-dockerized
cp helper-scripts/docker compose.override.yml.d/EXTERNAL_DNS/docker compose.override.yml . cp helper-scripts/docker-compose.override.yml.d/EXTERNAL_DNS/docker-compose.override.yml .
``` ```
Edit `docker compose.override.yml` and adjust the IP. Edit `docker-compose.override.yml` and adjust the IP.
Run `docker compose down ; docker compose up -d`. Run `docker compose down ; docker compose up -d`.

Datei anzeigen

@ -1,4 +1,4 @@
Watchdog verwendet Standardwerte fĂĽr alle in `docker compose.yml` definierten Thresholde. Watchdog verwendet Standardwerte fĂĽr alle in `docker-compose.yml` definierten Thresholde.
Die Standardwerte sind fĂĽr die meisten Konfigurationen geeignet. Die Standardwerte sind fĂĽr die meisten Konfigurationen geeignet.
Beispiel: Beispiel:

Datei anzeigen

@ -1,4 +1,4 @@
Watchdog uses default values for all thresholds defined in `docker compose.yml`. Watchdog uses default values for all thresholds defined in `docker-compose.yml`.
The default values will work for most setups. The default values will work for most setups.
Example: Example:

Datei anzeigen

@ -3,12 +3,12 @@ Dies wird **NUR** empfohlen, wenn Sie kein IPv6-fähiges Netzwerk auf Ihrem Host
Wenn Sie es wirklich brauchen, können Sie die Verwendung von IPv6 in der Compose-Datei deaktivieren. Wenn Sie es wirklich brauchen, können Sie die Verwendung von IPv6 in der Compose-Datei deaktivieren.
Zusätzlich können Sie auch den Start des Containers "ipv6nat-mailcow" deaktivieren, da er nicht benötigt wird, wenn Sie IPv6 nicht verwenden. Zusätzlich können Sie auch den Start des Containers "ipv6nat-mailcow" deaktivieren, da er nicht benötigt wird, wenn Sie IPv6 nicht verwenden.
Anstatt die Datei docker compose.yml direkt zu bearbeiten, ist es besser, eine Override-Datei zu erstellen Anstatt die Datei docker-compose.yml direkt zu bearbeiten, ist es besser, eine Override-Datei zu erstellen
zu erstellen und Ihre Ă„nderungen am Dienst dort zu implementieren. Leider scheint dies im Moment nur fĂĽr Dienste zu funktionieren, nicht fĂĽr Netzwerkeinstellungen. zu erstellen und Ihre Ă„nderungen am Dienst dort zu implementieren. Leider scheint dies im Moment nur fĂĽr Dienste zu funktionieren, nicht fĂĽr Netzwerkeinstellungen.
Um IPv6 im mailcow-Netzwerk zu deaktivieren, öffnen Sie docker compose.yml mit Ihrem bevorzugten Texteditor und suchen Sie nach dem Netzwerk-Abschnitt (er befindet sich am Ende der Datei). Um IPv6 im mailcow-Netzwerk zu deaktivieren, öffnen Sie docker-compose.yml mit Ihrem bevorzugten Texteditor und suchen Sie nach dem Netzwerk-Abschnitt (er befindet sich am Ende der Datei).
**1.** Ă„ndern Sie docker compose.yml **1.** Ă„ndern Sie docker-compose.yml
Ă„ndern Sie `enable_ipv6: true` in `enable_ipv6: false`: Ă„ndern Sie `enable_ipv6: true` in `enable_ipv6: false`:
@ -22,13 +22,13 @@ networks:
**2.** ipv6nat-mailcow deaktivieren **2.** ipv6nat-mailcow deaktivieren
Um den ipv6nat-mailcow Container ebenfalls zu deaktivieren, gehen Sie in Ihr mailcow Verzeichnis und erstellen Sie eine neue Datei namens "docker compose.override.yml": Um den ipv6nat-mailcow Container ebenfalls zu deaktivieren, gehen Sie in Ihr mailcow Verzeichnis und erstellen Sie eine neue Datei namens "docker-compose.override.yml":
**HINWEIS:** Wenn Sie bereits eine Override-Datei haben, erstellen Sie diese natĂĽrlich nicht neu, sondern fĂĽgen Sie die untenstehenden Zeilen entsprechend in Ihre bestehende Datei ein! **HINWEIS:** Wenn Sie bereits eine Override-Datei haben, erstellen Sie diese natĂĽrlich nicht neu, sondern fĂĽgen Sie die untenstehenden Zeilen entsprechend in Ihre bestehende Datei ein!
``` ```
# cd /opt/mailcow-dockerized # cd /opt/mailcow-dockerized
# touch docker compose.override.yml # touch docker-compose.override.yml
``` ```
Ă–ffnen Sie die Datei in Ihrem bevorzugten Texteditor und tragen Sie folgendes ein: Ă–ffnen Sie die Datei in Ihrem bevorzugten Texteditor und tragen Sie folgendes ein:

Datei anzeigen

@ -3,12 +3,12 @@ This is **ONLY** recommended if you do not have an IPv6 enabled network on your
If you really need to, you can disable the usage of IPv6 in the compose file. If you really need to, you can disable the usage of IPv6 in the compose file.
Additionally, you can also disable the startup of container "ipv6nat-mailcow", as it's not needed if you won't use IPv6. Additionally, you can also disable the startup of container "ipv6nat-mailcow", as it's not needed if you won't use IPv6.
Instead of editing docker compose.yml directly, it is preferable to create an override file for it Instead of editing docker-compose.yml directly, it is preferable to create an override file for it
and implement your changes to the service there. Unfortunately, this right now only seems to work for services, not for network settings. and implement your changes to the service there. Unfortunately, this right now only seems to work for services, not for network settings.
To disable IPv6 on the mailcow network, open docker compose.yml with your favourite text editor and search for the network section (it's near the bottom of the file). To disable IPv6 on the mailcow network, open docker-compose.yml with your favourite text editor and search for the network section (it's near the bottom of the file).
**1.** Modify docker compose.yml **1.** Modify docker-compose.yml
Change `enable_ipv6: true` to `enable_ipv6: false`: Change `enable_ipv6: true` to `enable_ipv6: false`:
@ -22,13 +22,13 @@ networks:
**2.** Disable ipv6nat-mailcow **2.** Disable ipv6nat-mailcow
To disable the ipv6nat-mailcow container as well, go to your mailcow directory and create a new file called "docker compose.override.yml": To disable the ipv6nat-mailcow container as well, go to your mailcow directory and create a new file called "docker-compose.override.yml":
**NOTE:** If you already have an override file, of course don't recreate it, but merge the lines below into your existing one accordingly! **NOTE:** If you already have an override file, of course don't recreate it, but merge the lines below into your existing one accordingly!
``` ```
# cd /opt/mailcow-dockerized # cd /opt/mailcow-dockerized
# touch docker compose.override.yml # touch docker-compose.override.yml
``` ```
Open the file in your favourite text editor and fill in the following: Open the file in your favourite text editor and fill in the following:

Datei anzeigen

@ -34,7 +34,7 @@ reporting {
} }
``` ```
Erstellen oder ändern Sie `docker compose.override.yml` im mailcow-dockerized Basisverzeichnis: Erstellen oder ändern Sie `docker-compose.override.yml` im mailcow-dockerized Basisverzeichnis:
``` ```
version: '2.1' version: '2.1'
@ -115,7 +115,7 @@ Der Olefia-Zeitplan hat die gleiche Implementierung wie `cron` in Go, die unters
Um den Zeitplan zu ändern: Um den Zeitplan zu ändern:
1. Bearbeiten Sie `docker compose.override.yml` und stellen Sie `ofelia.job-exec.rspamd_dmarc_reporting.schedule: "@every 24h"` auf einen gewĂĽnschten Wert, zum Beispiel auf `"@midnight"` 1. Bearbeiten Sie `docker-compose.override.yml` und stellen Sie `ofelia.job-exec.rspamd_dmarc_reporting.schedule: "@every 24h"` auf einen gewĂĽnschten Wert, zum Beispiel auf `"@midnight"`
2. FĂĽhren Sie `docker compose up -d` aus. 2. FĂĽhren Sie `docker compose up -d` aus.
@ -127,6 +127,6 @@ Zum Deaktivieren der Berichterstattung:
1. Setzen Sie `enabled` auf `false` in `data/conf/rspamd/local.d/dmarc.conf`. 1. Setzen Sie `enabled` auf `false` in `data/conf/rspamd/local.d/dmarc.conf`.
2. Machen Sie Änderungen in `docker compose.override.yml` an `rspamd-mailcow` und `ofelia-mailcow` rückgängig 2. Machen Sie Änderungen in `docker-compose.override.yml` an `rspamd-mailcow` und `ofelia-mailcow` rückgängig
3. FĂĽhren Sie `docker compose up -d` aus 3. FĂĽhren Sie `docker compose up -d` aus

Datei anzeigen

@ -34,7 +34,7 @@ reporting {
} }
``` ```
Create or modify `docker compose.override.yml` in the mailcow-dockerized base directory: Create or modify `docker-compose.override.yml` in the mailcow-dockerized base directory:
``` ```
version: '2.1' version: '2.1'
@ -112,7 +112,7 @@ Olefia schedule has same implementation as `cron` in Go, supported syntax descri
To change schedule: To change schedule:
1. Edit `docker compose.override.yml` and a djust `ofelia.job-exec.rspamd_dmarc_reporting.schedule: "@every 24h"` to a desired value, for example to `"@midnight"` 1. Edit `docker-compose.override.yml` and a djust `ofelia.job-exec.rspamd_dmarc_reporting.schedule: "@every 24h"` to a desired value, for example to `"@midnight"`
2. Run `docker compose up -d` 2. Run `docker compose up -d`
@ -124,6 +124,6 @@ To disable reporting:
1. Set `enabled` to `false` in `data/conf/rspamd/local.d/dmarc.conf` 1. Set `enabled` to `false` in `data/conf/rspamd/local.d/dmarc.conf`
2. Revert changes done in `docker compose.override.yml` to `rspamd-mailcow` and `ofelia-mailcow` 2. Revert changes done in `docker-compose.override.yml` to `rspamd-mailcow` and `ofelia-mailcow`
3. Run `docker compose up -d` 3. Run `docker compose up -d`

Datei anzeigen

@ -39,9 +39,9 @@ Um Ihre Ă„nderungen zu ĂĽbernehmen, fĂĽhren Sie `docker compose down` gefolgt vo
Das Ă„ndern von IPv6-Bindings ist anders als bei IPv4. Auch dies hat einen technischen Hintergrund. Das Ă„ndern von IPv6-Bindings ist anders als bei IPv4. Auch dies hat einen technischen Hintergrund.
Eine `docker compose.override.yml` Datei wird verwendet, anstatt die `docker compose.yml` Datei direkt zu bearbeiten. Dies geschieht, um die Aktualisierbarkeit zu erhalten, da die Datei `docker compose.yml` regelmäßig aktualisiert wird und Ihre Änderungen höchstwahrscheinlich überschrieben werden. Eine `docker-compose.override.yml` Datei wird verwendet, anstatt die `docker-compose.yml` Datei direkt zu bearbeiten. Dies geschieht, um die Aktualisierbarkeit zu erhalten, da die Datei `docker-compose.yml` regelmäßig aktualisiert wird und Ihre Änderungen höchstwahrscheinlich überschrieben werden.
Bearbeiten Sie die Datei "docker compose.override.yml" und erstellen Sie sie mit dem folgenden Inhalt. Ihr Inhalt wird mit der produktiven Datei "docker compose.yml" zusammengefĂĽhrt. Bearbeiten Sie die Datei "docker-compose.override.yml" und erstellen Sie sie mit dem folgenden Inhalt. Ihr Inhalt wird mit der produktiven Datei "docker-compose.yml" zusammengefĂĽhrt.
Es wird eine imaginäre IPv6 **2a00:dead:beef::abc** angegeben. Das erste Suffix `:PORT1` definiert den externen Port, während das zweite Suffix `:PORT2` zu dem entsprechenden Port innerhalb des Containers führt und nicht verändert werden darf. Es wird eine imaginäre IPv6 **2a00:dead:beef::abc** angegeben. Das erste Suffix `:PORT1` definiert den externen Port, während das zweite Suffix `:PORT2` zu dem entsprechenden Port innerhalb des Containers führt und nicht verändert werden darf.

Datei anzeigen

@ -39,9 +39,9 @@ To apply your changes, run `docker compose down` followed by `docker compose up
Changing IPv6 bindings is different from IPv4. Again, this has a technical background. Changing IPv6 bindings is different from IPv4. Again, this has a technical background.
A `docker compose.override.yml` file will be used instead of editing the `docker compose.yml` file directly. This is to maintain updatability, as the `docker compose.yml` file gets updated regularly and your changes will most likely be overwritten. A `docker-compose.override.yml` file will be used instead of editing the `docker-compose.yml` file directly. This is to maintain updatability, as the `docker-compose.yml` file gets updated regularly and your changes will most likely be overwritten.
Edit to create a file `docker compose.override.yml` with the following content. Its content will be merged with the productive `docker compose.yml` file. Edit to create a file `docker-compose.override.yml` with the following content. Its content will be merged with the productive `docker-compose.yml` file.
An imaginary IPv6 **2a00:dead:beef::abc** is given. The first suffix `:PORT1` defines the external port, while the second suffix `:PORT2` routes to the corresponding port inside the container and must not be changed. An imaginary IPv6 **2a00:dead:beef::abc** is given. The first suffix `:PORT1` defines the external port, while the second suffix `:PORT2` routes to the corresponding port inside the container and must not be changed.

Datei anzeigen

@ -26,11 +26,11 @@ Redis-SchlĂĽssel enthalten nur Logs von Anwendungen und filtern Systemmeldungen
### Logging-Treiber ### Logging-Treiber
#### Ăśber docker compose.override.yml #### Ăśber docker-compose.override.yml
Hier ist die gute Nachricht: Da Docker einige großartige Logging-Treiber hat, können Sie mailcow: dockerized mit Leichtigkeit in Ihre bestehende Logging-Umgebung integrieren. Hier ist die gute Nachricht: Da Docker einige großartige Logging-Treiber hat, können Sie mailcow: dockerized mit Leichtigkeit in Ihre bestehende Logging-Umgebung integrieren.
Erstellen Sie eine `docker compose.override.yml` und fĂĽgen Sie zum Beispiel diesen Block hinzu, um das "gelf" Logging-Plugin fĂĽr `postfix-mailcow` zu verwenden: Erstellen Sie eine `docker-compose.override.yml` und fĂĽgen Sie zum Beispiel diesen Block hinzu, um das "gelf" Logging-Plugin fĂĽr `postfix-mailcow` zu verwenden:
``` ```
version: '2.1' version: '2.1'

Datei anzeigen

@ -26,11 +26,11 @@ Redis keys will only hold logs from applications and filter out system messages
### Logging drivers ### Logging drivers
#### Via docker compose.override.yml #### Via docker-compose.override.yml
Here is the good news: Since Docker has some great logging drivers, you can integrate mailcow: dockerized into your existing logging environment with ease. Here is the good news: Since Docker has some great logging drivers, you can integrate mailcow: dockerized into your existing logging environment with ease.
Create a `docker compose.override.yml` and add, for example, this block to use the "gelf" logging plugin for `postfix-mailcow`: Create a `docker-compose.override.yml` and add, for example, this block to use the "gelf" logging plugin for `postfix-mailcow`:
``` ```
version: '2.1' version: '2.1'

Datei anzeigen

@ -182,7 +182,7 @@ In diesem Abschnitt gehen wir davon aus, dass Sie Ihren Traefik 2 `[certificates
Zuallererst werden wir den acme-mailcow-Container deaktivieren, da wir die von traefik bereitgestellten Zertifikate verwenden werden. Zuallererst werden wir den acme-mailcow-Container deaktivieren, da wir die von traefik bereitgestellten Zertifikate verwenden werden.
Dazu mĂĽssen wir `SKIP_LETS_ENCRYPT=y` in unserer `mailcow.conf` setzen und `docker compose up -d` ausfĂĽhren, um die Ă„nderungen zu ĂĽbernehmen. Dazu mĂĽssen wir `SKIP_LETS_ENCRYPT=y` in unserer `mailcow.conf` setzen und `docker compose up -d` ausfĂĽhren, um die Ă„nderungen zu ĂĽbernehmen.
Dann erstellen wir eine `docker compose.override.yml` Datei, um die Hauptdatei `docker compose.yml` zu ĂĽberschreiben, die sich im Mailcow-Stammverzeichnis befindet. Dann erstellen wir eine `docker-compose.override.yml` Datei, um die Hauptdatei `docker-compose.yml` zu ĂĽberschreiben, die sich im Mailcow-Stammverzeichnis befindet.
```yaml ```yaml
version: '2.1' version: '2.1'

Datei anzeigen

@ -184,7 +184,7 @@ For this section we'll assume you have your Traefik 2 `[certificatesresolvers]`
So, first of all, we are going to disable the acme-mailcow container since we'll use the certs that traefik will provide us. So, first of all, we are going to disable the acme-mailcow container since we'll use the certs that traefik will provide us.
For this we'll have to set `SKIP_LETS_ENCRYPT=y` on our `mailcow.conf`, and run `docker compose up -d` to apply the changes. For this we'll have to set `SKIP_LETS_ENCRYPT=y` on our `mailcow.conf`, and run `docker compose up -d` to apply the changes.
Then we'll create a `docker compose.override.yml` file in order to override the main `docker compose.yml` found in your mailcow root folder. Then we'll create a `docker-compose.override.yml` file in order to override the main `docker-compose.yml` found in your mailcow root folder.
```yaml ```yaml
version: '2.1' version: '2.1'

Datei anzeigen

@ -188,4 +188,4 @@ Sie können außerdem die [cloud-init Netzwerkänderungen deaktivieren.](https:/
## MTU ## MTU
Besonders relevant fĂĽr OpenStack-Benutzer: ĂśberprĂĽfen Sie Ihre MTU und setzen Sie sie entsprechend in docker compose.yml. Siehe **4.1** in [unseren Installationsanleitungen](../i_u_m/i_u_m_install.de.md). Besonders relevant fĂĽr OpenStack-Benutzer: ĂśberprĂĽfen Sie Ihre MTU und setzen Sie sie entsprechend in docker-compose.yml. Siehe **4.1** in [unseren Installationsanleitungen](../i_u_m/i_u_m_install.de.md).

Datei anzeigen

@ -185,4 +185,4 @@ You may want to [disable cloud-init network changes.](https://wiki.hetzner.de/in
## MTU ## MTU
Especially relevant for OpenStack users: Check your MTU and set it accordingly in docker compose.yml. See **4.1** in [our installation docs](../i_u_m/i_u_m_install.en.md). Especially relevant for OpenStack users: Check your MTU and set it accordingly in docker-compose.yml. See **4.1** in [our installation docs](../i_u_m/i_u_m_install.en.md).

Datei anzeigen

@ -16,9 +16,9 @@ Diese Anleitung behandelt nur die Grundlagen.
## Einrichten von borgmatic ## Einrichten von borgmatic
### Erstellen oder ändern Sie `docker compose.override.yml` ### Erstellen oder ändern Sie `docker-compose.override.yml`
Im mailcow-dockerized Stammverzeichnis erstellen oder bearbeiten Sie `docker compose.override.yml` und fĂĽgen Sie die folgende Im mailcow-dockerized Stammverzeichnis erstellen oder bearbeiten Sie `docker-compose.override.yml` und fĂĽgen Sie die folgende
Konfiguration ein: Konfiguration ein:
```yaml ```yaml
version: '2.1' version: '2.1'
@ -148,7 +148,7 @@ keine benutzerdefinierten Daten in ihrem maildir oder ihrer mailcow Datenbank.
ausschlieĂźlich. SELinux wird (berechtigterweise) jeden anderen Container, wie z.B. den borgmatic Container, daran hindern, auf ausschlieĂźlich. SELinux wird (berechtigterweise) jeden anderen Container, wie z.B. den borgmatic Container, daran hindern, auf
dieses Volume zu schreiben. dieses Volume zu schreiben.
Bevor Sie eine Wiederherstellung durchfĂĽhren, mĂĽssen Sie das vmail-Volume in `docker compose.override.yml` beschreibbar machen, indem Sie das Bevor Sie eine Wiederherstellung durchfĂĽhren, mĂĽssen Sie das vmail-Volume in `docker-compose.override.yml` beschreibbar machen, indem Sie das
das `ro`-Flag aus dem Volume entfernen. das `ro`-Flag aus dem Volume entfernen.
Dann können Sie den folgenden Befehl verwenden, um das Maildir aus einem Backup wiederherzustellen: Dann können Sie den folgenden Befehl verwenden, um das Maildir aus einem Backup wiederherzustellen:

Datei anzeigen

@ -16,9 +16,9 @@ This guide only covers the basics.
## Setting up borgmatic ## Setting up borgmatic
### Create or amend `docker compose.override.yml` ### Create or amend `docker-compose.override.yml`
In the mailcow-dockerized root folder create or edit `docker compose.override.yml` and insert the following In the mailcow-dockerized root folder create or edit `docker-compose.override.yml` and insert the following
configuration: configuration:
```yaml ```yaml
@ -178,7 +178,7 @@ any custom data in your maildir or your mailcow database.
exclusively. SELinux will (rightfully) prevent any other container, such as the borgmatic container, from writing to exclusively. SELinux will (rightfully) prevent any other container, such as the borgmatic container, from writing to
this volume. this volume.
Before running a restore you must make the vmail volume writeable in `docker compose.override.yml` by removing Before running a restore you must make the vmail volume writeable in `docker-compose.override.yml` by removing
the `ro` flag from the volume. the `ro` flag from the volume.
Then you can use the following command to restore the maildir from a backup: Then you can use the following command to restore the maildir from a backup:

Datei anzeigen

@ -1,6 +1,6 @@
Mit der Fähigkeit von Gitea, sich über SMTP zu authentifizieren, ist es trivial, es mit mailcow zu integrieren. Es sind nur wenige Änderungen erforderlich: Mit der Fähigkeit von Gitea, sich über SMTP zu authentifizieren, ist es trivial, es mit mailcow zu integrieren. Es sind nur wenige Änderungen erforderlich:
1\. Ă–ffnen Sie `docker compose.override.yml` und fĂĽgen Sie Gitea hinzu: 1\. Ă–ffnen Sie `docker-compose.override.yml` und fĂĽgen Sie Gitea hinzu:
``` ```
version: '2.1' version: '2.1'

Datei anzeigen

@ -1,6 +1,6 @@
With Gitea' ability to authenticate over SMTP it is trivial to integrate it with mailcow. Few changes are needed: With Gitea' ability to authenticate over SMTP it is trivial to integrate it with mailcow. Few changes are needed:
1\. Open `docker compose.override.yml` and add gitea: 1\. Open `docker-compose.override.yml` and add gitea:
``` ```
version: '2.1' version: '2.1'

Datei anzeigen

@ -1,6 +1,6 @@
Mit Gogs' Fähigkeit, sich über SMTP zu authentifizieren, ist es einfach, es mit mailcow zu verbinden. Es sind nur wenige Änderungen erforderlich: Mit Gogs' Fähigkeit, sich über SMTP zu authentifizieren, ist es einfach, es mit mailcow zu verbinden. Es sind nur wenige Änderungen erforderlich:
1\. Ă–ffne `docker compose.override.yml` und fĂĽge Gogs hinzu: 1\. Ă–ffne `docker-compose.override.yml` und fĂĽge Gogs hinzu:
``` ```
version: '2.1' version: '2.1'

Datei anzeigen

@ -1,6 +1,6 @@
With Gogs' ability to authenticate over SMTP it is trivial to integrate it with mailcow. Few changes are needed: With Gogs' ability to authenticate over SMTP it is trivial to integrate it with mailcow. Few changes are needed:
1\. Open `docker compose.override.yml` and add Gogs: 1\. Open `docker-compose.override.yml` and add Gogs:
``` ```
version: '2.1' version: '2.1'

Datei anzeigen

@ -110,7 +110,7 @@ SNAT6_TO_SOURCE=dead:beef # Ă„ndern Sie dies in Ihre globale IPv6
#### Mailman-Integration hinzufĂĽgen #### Mailman-Integration hinzufĂĽgen
Erstelle die Datei `/opt/mailcow-dockerized/docker compose.override.yml` (z.B. mit `nano`) und fĂĽge die folgenden Zeilen hinzu: Erstelle die Datei `/opt/mailcow-dockerized/docker-compose.override.yml` (z.B. mit `nano`) und fĂĽge die folgenden Zeilen hinzu:
``` ```
version: '2.1' version: '2.1'

Datei anzeigen

@ -111,7 +111,7 @@ SNAT6_TO_SOURCE=dead:beef # change this to your global IPv6
#### Add Mailman integration #### Add Mailman integration
Create the file `/opt/mailcow-dockerized/docker compose.override.yml` (e.g. with `nano`) and add the following lines: Create the file `/opt/mailcow-dockerized/docker-compose.override.yml` (e.g. with `nano`) and add the following lines:
``` ```
version: '2.1' version: '2.1'

Datei anzeigen

@ -10,7 +10,7 @@ Damit mailcow ein Zertifikat fĂĽr die Nextcloud Domain generieren kann, muss die
## Hintergrund-Aufgaben ## Hintergrund-Aufgaben
Zur Verwendung der empfohlenen Einstellung (Cron) zur Verarbeitung der Hintergrund-Aufgaben mĂĽssen in der `docker compose.override.yml` folgende Zeilen Zur Verwendung der empfohlenen Einstellung (Cron) zur Verarbeitung der Hintergrund-Aufgaben mĂĽssen in der `docker-compose.override.yml` folgende Zeilen
hinzugefĂĽgt werden: hinzugefĂĽgt werden:
``` ```

Datei anzeigen

@ -10,7 +10,7 @@ In order for mailcow to generate a a certificate for the nextcloud domain you ne
## Background jobs ## Background jobs
To use the recommended setting (cron) to execute the background jobs following lines need to be added to the `docker compose.override.yml`: To use the recommended setting (cron) to execute the background jobs following lines need to be added to the `docker-compose.override.yml`:
``` ```
version: '2.1' version: '2.1'

Datei anzeigen

@ -1,6 +1,6 @@
Um Portainer zu aktivieren, müssen die docker compose.yml und site.conf für Nginx geändert werden. Um Portainer zu aktivieren, müssen die docker-compose.yml und site.conf für Nginx geändert werden.
1\. Erstellen Sie eine neue Datei `docker compose.override.yml` im mailcow-dockerized Stammverzeichnis und fĂĽgen Sie die folgende Konfiguration ein 1\. Erstellen Sie eine neue Datei `docker-compose.override.yml` im mailcow-dockerized Stammverzeichnis und fĂĽgen Sie die folgende Konfiguration ein
``` ```
version: '2.1' version: '2.1'
services: services:

Datei anzeigen

@ -1,6 +1,6 @@
In order to enable Portainer, the docker compose.yml and site.conf for Nginx must be modified. In order to enable Portainer, the docker-compose.yml and site.conf for Nginx must be modified.
1\. Create a new file `docker compose.override.yml` in the mailcow-dockerized root folder and insert the following configuration 1\. Create a new file `docker-compose.override.yml` in the mailcow-dockerized root folder and insert the following configuration
``` ```
version: '2.1' version: '2.1'
services: services:

Datei anzeigen

@ -207,7 +207,7 @@ Editieren Sie `mailcow.conf` und fĂĽgen Sie folgendes hinzu:
ALLOW_ADMIN_EMAIL_LOGIN_ROUNDCUBE=y ALLOW_ADMIN_EMAIL_LOGIN_ROUNDCUBE=y
``` ```
Editieren Sie `docker compose.override.yml` und verfassen/erweitern Sie den Abschnitt fĂĽr `php-fpm-mailcow`: Editieren Sie `docker-compose.override.yml` und verfassen/erweitern Sie den Abschnitt fĂĽr `php-fpm-mailcow`:
```yml ```yml
version: '2.1' version: '2.1'

Datei anzeigen

@ -207,7 +207,7 @@ Edit `mailcow.conf` and add the following:
ALLOW_ADMIN_EMAIL_LOGIN_ROUNDCUBE=y ALLOW_ADMIN_EMAIL_LOGIN_ROUNDCUBE=y
``` ```
Edit `docker compose.override.yml` and crate/extend the section for `php-fpm-mailcow`: Edit `docker-compose.override.yml` and crate/extend the section for `php-fpm-mailcow`:
```yml ```yml
version: '2.1' version: '2.1'

Datei anzeigen

@ -29,7 +29,7 @@ Bitte lesen Sie unsere [DNS-Konfiguration](../prerequisite/prerequisite-dns.de.m
- `ERROR: UngĂĽltiges Interpolationsformat ...` - `ERROR: UngĂĽltiges Interpolationsformat ...`
- `AttributeError: 'NoneType' Objekt hat kein Attribut 'keys'`. - `AttributeError: 'NoneType' Objekt hat kein Attribut 'keys'`.
- ERROR: In der Datei './docker compose.yml' hat der Dienst 'version' keine Konfigurationsoptionen. - ERROR: In der Datei './docker-compose.yml' hat der Dienst 'version' keine Konfigurationsoptionen.
Wenn Sie eine oder ähnliche Meldungen erhalten, während Sie versuchen, mailcow: dockerized auszuführen, überprüfen Sie bitte, ob Sie die **aktuellste** Version von **Docker** und **docker compose** haben. Wenn Sie eine oder ähnliche Meldungen erhalten, während Sie versuchen, mailcow: dockerized auszuführen, überprüfen Sie bitte, ob Sie die **aktuellste** Version von **Docker** und **docker compose** haben.

Datei anzeigen

@ -30,7 +30,7 @@ Please read our guide on [DNS configuration](../prerequisite/prerequisite-dns.en
- `ERROR: Invalid interpolation format ...` - `ERROR: Invalid interpolation format ...`
- `AttributeError: 'NoneType' object has no attribute 'keys'`. - `AttributeError: 'NoneType' object has no attribute 'keys'`.
- `ERROR: In file './docker compose.yml' service 'version' doesn't have any configuration options`. - `ERROR: In file './docker-compose.yml' service 'version' doesn't have any configuration options`.
When you encounter one or similar messages while trying to run mailcow: dockerized please check if you have the **latest** version of **Docker** and **docker compose** When you encounter one or similar messages while trying to run mailcow: dockerized please check if you have the **latest** version of **Docker** and **docker compose**