2,7 KiB
Der "neue" Weg
!!! warning "Warnung" Neuere Docker-Versionen scheinen sich über bestehende Volumes zu beschweren. Man kann dies vorübergehend beheben, indem man das bestehende Volume entfernt und mailcow mit der Override-Datei startet. Aber es scheint nach einem Neustart problematisch zu sein (muss bestätigt werden).
Ein einfacher, schmutziger, aber stabiler Workaround ist es, mailcow zu stoppen, /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data
zu entfernen und einen neuen Link zu Ihrem entfernten Dateisystem zu erstellen, zum Beispiel:
mv /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data_backup
ln -s /mnt/volume-xy/vmail_data /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data
Starten Sie anschließend mailcow.
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:
version: '2.1'
volumes:
vmail-vol-1:
driver_opts:
type: none
device: /data/mailcow/vmail
o: bind
Verschieben eines bestehenden vmail-Ordners:
- Finden Sie den aktuellen vmail-Ordner anhand seines "Mountpoint"-Attributs:
docker volume inspect mailcowdockerized_vmail-vol-1
[
{
"CreatedAt": "2019-06-16T22:08:34+02:00",
"Driver": "local",
"Labels": {
"com.docker.compose.project": "mailcowdockerized",
"com.docker.compose.version": "1.23.2",
"com.docker.compose.volume": "vmail-vol-1"
},
"Mountpoint": "/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data",
"Name": "mailcowdockerized_vmail-vol-1",
"Options": null,
"Scope": "local"
}
]
-
Kopieren Sie den Inhalt des
Mountpoint
-Ordners an den neuen Speicherort (z.B./data/mailcow/vmail
) mitcp -a
,rsync -a
oder einem ähnlichen, nicht strikten Kopierbefehl -
Stoppen Sie mailcow durch Ausführen des kommenden Befehls aus Ihrem mailcow-Stammverzeichnis (z.B.
/opt/mailcow-dockerized
): === "docker compose (Plugin)"docker compose down
=== "docker-compose (Standalone)"
``` bash
docker-compose down
```
-
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
-
Starten Sie mailcow durch Ausführen des folgenden Befehls aus Ihrem mailcow-Stammverzeichnis (z.B.
/opt/mailcow-dockerized
): === "docker compose (Plugin)"docker compose up -d
=== "docker-compose (Standalone)"
``` bash
docker-compose up -d
```