Zum Hauptinhalt springen

Docker

gefahr

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:

cd /<passwork>/

Laden Sie das Migrationsskript für die Docker-Umgebung und Passwork herunter:

wget https://repos.passwork.pro/repository/docker/migration_7.sh

Weisen Sie dem Skript Ausführungsberechtigungen zu und führen Sie es aus:

chmod +x migration_7.sh
gefahr

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:

sudo ./migration_7.sh -now
Passwork befindet sich in einem geschlossenen Netzwerk

Beschaffen Sie die folgenden .zip-Archive und .tar-Container-Images:

  1. Passwork-Code im Format Passwork-xxxxxx.zip vom Kundenportal;
  2. Docker Compose-Archiv des Builds;
  3. Passwork-Installationsskript;
  4. Container-Image Nginx;
  5. Container-Image PHP;
  6. Container-Image Percona Server for MongoDB;
  7. Container-Image Postfix;
  8. Container-Image Alpine.

Erstellen Sie auf dem Passwork-Server im Stammverzeichnis des Docker-Builds (./) ein Verzeichnis:

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:

./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:

Beispiel für die Datei-/Archiv-Platzierung

Führen Sie die Passwork-Migration mit folgenden Argumenten aus:

sudo ./migration_7.sh -now -o
Passwork hat Internetzugang und verwendet eine externe Datenbank

Führen Sie die Passwork-Migration mit folgenden Argumenten aus:

sudo ./migration_7.sh -now -nodb
Passwork befindet sich in einem geschlossenen Netzwerk und verwendet eine externe Datenbank
  1. 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;
  2. Verschieben Sie die erhaltenen Archive und Images auf den Server mit dem Docker-Build und ordnen Sie sie im oben gezeigten Format an;
  3. Führen Sie die Passwork-Migration mit folgenden Argumenten aus:
sudo ./migration_7.sh -now -o -nodb
Durchgeführte Aktionen
  1. Lesen der Konfigurationsdatei config.ini und Konvertierung der Parameter in das neue Format
  2. Ändern des Werts von pw in der MongoDB-Datenbank
  3. Extrahieren des Verschlüsselungsschlüssels und Speichern in einer separaten Datei
  4. Erstellen einer Datenbanksicherung mittels db-backup.sh
  5. Archivieren der Umgebungsdateien in tar.gz
  6. Stoppen der compose-Build-Container
  7. Herunterladen und Ausführen des Docker-Build- und Passwork-Update-Skripts
  8. Herunterladen und Ausführen des aktualisierten compose-Builds
  9. Wiederherstellen der Passwork-Datenbank im neuen Docker-Build
  10. 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:

Beispiel eines Fehlers während der Migrationsausführung

So sieht ein erfolgreicher Skriptabschluss aus:

Beispiel einer erfolgreichen Migration zu Passwork 7
info

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.