Das Docker Image aktualisieren
-
- vor 4 Jahren zuletzt von MLR bearbeitet
-
-
- Keine Statusinformation
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