Keine Kategorien vergeben

Das Docker Image aktualisieren


Einleitung[Bearbeiten | Quelltext bearbeiten]

  • Edition: BlueSpice free, Distribution als Docker Image auf Docker Hub.
  • BlueSpice 3.1.2 enthält keine automatische Updgrade-Funktion. Diese wird ab BlueSpice 3.1.3 bereitgestellt.
  • Diese Anleitung beschreibt den manuellen Upgrade-Prozess und korrigiert einige Probleme.

Einen neuen Container mit alten Daten erstellen[Bearbeiten | Quelltext bearbeiten]

Wir gehen davon aus, dass Sie die BlueSpice Distribution von Docker Hub benutzen. Außerdem sollten Sie die Daten als externes Docker Volumen gespeichert haben.

Beispiel:

docker run -d -p 80:80 -v {/my/data/folder}:/data bluespice/bluespice-free

1.Erstellen Sie ein Backup des aktuellen Datenordners:

sudo cp -Rf /my/data/folder /my/data/current

2. Beenden Sie den aktuellen BlueSpice-free Container:

docker container stop $your_container_id_or_name

3. Entfernen Sie den Container (optional):

docker container rm $your_container_id_or_name

4. Holen Sie sich das neue Container Image:

docker pull bluespice/bluespice-free:latest

5. Erstellen Sie einen neuen Datenordner für die neue Installation:

mkdir /my/data/new

6. Erstellen Sie mit dem neuen Image einen neuen Container:

docker run -d -p 80:80 -v {/my/data/new}:/data bluespice/bluespice-free

7. Wenn der Container hochfährt, haben Sie ein leeres Wiki. Beenden Sie den neu erstellten Container und verschieben Sie Ihr Backup zurück in die neue Instanz:

docker container stop $new_container_name_or_id

8. Entfernen Sie den Inhalt der neuen Instanz:

sudo rm -Rf /my/data/new/*

9. Verschieben Sie das Backup nach /my/data/new:

sudo cp -Rf /my/data/current/* /my/data/new/

10. Starten Sie den neuen Container:

docker container start $new_container_name_or_id

Jetzt läuft der neue Container mit Ihren alten Daten. Nun führen Sie noch einige Korrektur- und Wartungsskripts aus:

sudo docker exec $new_container_name_or_id chown -Rf mysql:mysql /data/mysql
sudo docker exec $new_container_name_or_id /etc/init.d/mysql restart
sudo docker exec $new_container_name_or_id /opt/docker/setwikiperm.sh /data/www/bluespice/w
sudo docker exec $new_container_name_or_id /usr/bin/php /data/www/bluespice/w/maintenance/update.php --quick
sudo docker exec $new_container_name_or_id /usr/bin/php /data/www/bluespice/w/maintenance/rebuildall.php --quick
sudo docker exec $new_container_name_or_id /usr/bin/php /data/www/bluespice/w/extensions/BlueSpiceExtendedSearch/maintenance/initBackends.php --quick
sudo docker exec $new_container_name_or_id /usr/bin/php /data/www/bluespice/w/extensions/BlueSpiceExtendedSearch/maintenance/rebuildIndex.php
sudo docker exec $new_container_name_or_id /usr/bin/php /data/www/bluespice/w/maintenance/runJobs.php

Korrektur der Suchfunktion[Bearbeiten | Quelltext bearbeiten]

Folgende Befehle korrigieren die Indexe von BlueSpiceExtendedSearch:

sudo docker exec $container_name_or_id /opt/docker/setwikiperm.sh /data/www/bluespice/w
sudo docker exec $container_name_or_id /usr/bin/php /data/www/bluespice/w/maintenance/update.php --quick
sudo docker exec $container_name_or_id /usr/bin/php /data/www/bluespice/w/maintenance/rebuildall.php --quick
sudo docker exec $container_name_or_id /usr/bin/php /data/www/bluespice/w/extensions/BlueSpiceExtendedSearch/maintenance/initBackends.php --quick
sudo docker exec $container_name_or_id /usr/bin/php /data/www/bluespice/w/extensions/BlueSpiceExtendedSearch/maintenance/rebuildIndex.php
sudo docker exec $container_name_or_id /usr/bin/php /data/www/bluespice/w/maintenance/runJobs.php

Anhänge

Diskussionen