Docker
Diese Anleitung ist für eine einzelne Passwork-Installation vorgesehen und eignet sich nicht für eine Failover-Lösung
Aktualisierung von PHP und Passwork
Navigieren Sie zum Stammverzeichnis des Passwork-Docker-Builds:
- shell
cd /<passwork>/
Laden Sie das Migrationsskript für die Docker-Umgebung und Passwork herunter:
- shell
wget https://repos.passwork.pro/repository/docker/migration_7.sh
Weisen Sie dem Skript Ausführungsberechtigungen zu und führen Sie es aus:
- shell
chmod +x migration_7.sh
Bevor Sie das Skript ausführen, stellen Sie bitte Folgendes sicher.
Passwork hat Internetzugang und verwendet eine Datenbank in einem Container
Wenn der Passwork-Server Internetzugang hat und eine Datenbank in einem Container (psmdb5) verwendet, führen Sie die Migration mit folgendem Argument aus:
- shell
sudo ./migration_7.sh -now
Passwork befindet sich in einem geschlossenen Netzwerk
Beschaffen Sie die folgenden .zip-Archive und .tar-Container-Images:
- Passwork-Code im Format
Passwork-xxxxxx.zipvom Kundenportal; - Docker Compose-Archiv des Builds;
- Passwork-Installationsskript;
- Container-Image Nginx;
- Container-Image PHP;
- Container-Image Percona Server for MongoDB;
- Container-Image Postfix;
- Container-Image Alpine.
Erstellen Sie auf dem Passwork-Server im Stammverzeichnis des Docker-Builds (./) ein Verzeichnis:
- shell
mkdir ./passwork_images
Verschieben Sie die erhaltenen Archive und Images auf den Server mit dem Docker-Build und ordnen Sie sie im folgenden Format an:
- shell
./Passwork-xxxxxx.zip
./passwork_compose_install.sh
./passwork_compose_last.tar.gz
./passwork_images/alpine.tar
./passwork_images/nginx.tar
./passwork_images/php8.3.tar
./passwork_images/postfix.tar
./passwork_images/psmdb7.tar
Beispiel für die Platzierung der erhaltenen Archive und Images im Docker-Build:

Führen Sie die Passwork-Migration mit folgenden Argumenten aus:
- shell
sudo ./migration_7.sh -now -o
Passwork hat Internetzugang und verwendet eine externe Datenbank
Führen Sie die Passwork-Migration mit folgenden Argumenten aus:
- shell
sudo ./migration_7.sh -now -nodb
Passwork befindet sich in einem geschlossenen Netzwerk und verwendet eine externe Datenbank
- Führen Sie die Schritte zum Erhalt der .zip-Archive und .tar-Images aus dem Abschnitt Passwork-Server in einem geschlossenen Netzwerk durch, ohne psmdb7.tar zu beziehen;
- Verschieben Sie die erhaltenen Archive und Images auf den Server mit dem Docker-Build und ordnen Sie sie im oben gezeigten Format an;
- Führen Sie die Passwork-Migration mit folgenden Argumenten aus:
- shell
sudo ./migration_7.sh -now -o -nodb
Durchgeführte Aktionen
- Lesen der Konfigurationsdatei config.ini und Konvertierung der Parameter in das neue Format
- Ändern des Werts von pw in der MongoDB-Datenbank
- Extrahieren des Verschlüsselungsschlüssels und Speichern in einer separaten Datei
- Erstellen einer Datenbanksicherung mittels db-backup.sh
- Archivieren der Umgebungsdateien in tar.gz
- Stoppen der compose-Build-Container
- Herunterladen und Ausführen des Docker-Build- und Passwork-Update-Skripts
- Herunterladen und Ausführen des aktualisierten compose-Builds
- Wiederherstellen der Passwork-Datenbank im neuen Docker-Build
- Durchführen der Migration der Passwork-Datenbankobjekte
Ablauf der Skriptausführung
Das Skript prüft den Abschluss der primären Migration in der Passwork-Weboberfläche (6.5), konvertiert Konfigurationsdateien und führt die Migration durch. Bei Fehlern werden diese in der Konsole angezeigt:

So sieht ein erfolgreicher Skriptabschluss aus:

Wenn die Passwork-Migration auf Astra Linux durchgeführt wird, wenden Sie sich bitte an den technischen Support von Passwork für zusätzliche Anweisungen.