Information
-
Diese Anleitung richtet sich an IT‑Administratoren, die ein Update der agilen Komponente (pulse) auf das Release 44.5 durchführen.
-
Für das pulse-Release 44.5 müssen die Berechtigungen im Data‑Volume korrekt gesetzt sein, damit Datei‑Uploads und Logs zuverlässig funktionieren.
Details
-
Für folgende Verzeichnisse muss die Berechtigung “1777” gesetzt sein:
-
/app/data -
/app/data/mf-userfiles
-
-
Wenn das Volume neu angelegt wird, werden diese Berechtigungen automatisch korrekt gesetzt.
Bestehende Docker-Volumes behalten alte Berechtigungen (“755”), wodurch der Laufzeit-User keine Schreibrechte hat. Neu angelegte Volumes sind hiervon nicht betroffen, weil ihre Verzeichnisse von Anfang an mit den korrekten Berechtigungen erstellt werden.
Verwendete Platzhalter
Details
-
<COMPOSE_FILE>: Compose‑Datei der Umgebung (z. B.docker-compose.yml) -
<SERVICE_NAME>: Name des pulse‑Service -
<DATA_VOLUME>: Name des Data‑Volumes für/app/data -
<CONTAINER_NAME>: Name des laufenden pulse‑Containers
Vorab-Check: Ist das Data-Volume leer?
Information
-
Prüfen Sie zunächst, ob im Verzeichnis
/app/data/mf-userfilesbereits Dateien oder Unterverzeichnisse vorhanden sind.
docker exec <CONTAINER_NAME> sh -lc '
ls -la /app/data/mf-userfiles/
'
Details
-
Wenn nur
.und..angezeigt werden, ist das Verzeichnis leer. -
Werden weitere Einträge angezeigt, liegt ein bestehender Datenbestand vor.
-
In diesem Fall sollte das Vorgehen bei bestehendem Datenbestand angewendet werden.
-
Vorgehensweise bei leerem Data-Volume
Vorgehensweise
-
Agile Komponente (pulse) stoppen:
-
docker compose -f <COMPOSE_FILE> stop <SERVICE_NAME>
-
-
Container entfernen und Volumes neu anlegen:
-
docker compose -f <COMPOSE_FILE> rm -f <SERVICE_NAME> -
docker volume rm <DATA_VOLUME> -
docker compose -f <COMPOSE_FILE> up -d <SERVICE_NAME>
-
-
Hinweise:
-
Vor dem Löschen des Volumes prüfen, ob in /app/data noch benötigte Daten vorhanden sind.
-
Daten für Produktivsysteme müssen im Vorfeld gesichert sein.
-
Beim Löschen des Volumes werden alle Daten im Volume entfernt.
-
-
Im Container verifizieren:
-
docker exec <CONTAINER_NAME> sh -lc 'id && ls -ld /app/data /app/data/logs /app/data/mf-userfiles && stat -c "%a %U:%G %n" /app/data /app/data/mf-userfiles'
-
-
Ergebnis:
-
Alle drei Verzeichnisse besitzen Schreibrechte (“1777”).
-
Dieser Check ist besonders bei bestehenden Volumes wichtig, da dort häufig alte Berechtigungen bestehen bleiben.
-
-
Funktionstest:
-
Attachment-Upload in der agilen Komponente (pulse) testen.
-
In den Logs sicherstellen, dass keine EACCES-Meldungen mehr erscheinen.
-
Vorgehensweise bei bestehendem Datenbestand
Vorgehensweise
Wenn im pulse-Data-Volume Dateien liegen, sollten diese vor dem Neuaufbau gesichert und danach wieder eingespielt werden.
-
Agile Komponente (pulse) stoppen:
-
docker compose -f <COMPOSE_FILE> stop <SERVICE_NAME>
-
-
Daten aus bestehendem Volume sichern:
mkdir -p ./pulse-data-backup
docker run --rm -v <DATA_VOLUME>:/data -v "$PWD/pulse-data-backup":/backup alpine sh -lc '
cp -a /data/. /backup/
'
-
Container entfernen und Volumes neu anlegen:
docker compose -f <COMPOSE_FILE> rm -f <SERVICE_NAME>
docker volume rm <DATA_VOLUME>
docker compose -f <COMPOSE_FILE> up -d <SERVICE_NAME>
docker compose -f <COMPOSE_FILE> stop <SERVICE_NAME>
-
Gesicherte Daten zurückkopieren:
docker run --rm -v <DATA_VOLUME>:/data -v "$PWD/pulse-data-backup":/backup alpine sh -lc '
cp -a /backup/. /data/
'
-
Agile Komponente (pulse) starten und prüfen:
docker compose -f <COMPOSE_FILE> up -d <SERVICE_NAME>
docker exec <CONTAINER_NAME> sh -lc '
ls -ld /app/data /app/data/mf-userfiles && stat -c "%a %U:%G %n" /app/data /app/data/mf-userfiles'
-
Ergebnis:
-
Dateien sind weiterhin vorhanden.
-
Die Verzeichnisse
/app/dataund/app/data/mf-userfilesbesitzen Schreibrechte (“1777”).
-