Aktualisieren einer Docker-basierte OTOBO-Installation¶
Warnung
Don’t update without a complete backup of your system. You can use the Backup und Wiederherstellung mit Docker script in your existing Docker installation for that.
Für eine Docker-basierte OTOBO-Umgebung wird OTOBO selbst sowie eine Umgebung benötigt, in der die Software ausgeführt werden kann. Das OTOBO Docker Image stellt die Umgebung sowie eine Kopie der OTOBO-Software bereit. Die Software selbst wird im Volume otobo_opt_otobo installiert. Das Volume hat deshalb einen Namen, weil alle Laufzeitdaten, z. B. Konfigurationsdateien und installierte Pakete, im selben Verzeichnisbaum gespeichert werden.
Beim Update auf eine neue OTOBO-Version müssen verschiedene Dinge geschehen.
- Die Docker Compose Dateien müssen aktualisiert werden.
- Die Docker Compose Konfig-Datei .env muss überprüft werden.
- Das neue Docker-Image muss abgerufen werden.
- Das Volume otobo_opt_otobo muss aktualisiert werden.
- Einige Wartungsaufgaben sind auszuführen.
Bemerkung
In the sample commands below, the version 10.x.y, corresponding to the tag 10_x_y, is used as the example version. Please substitute it with the real version, e.g. 10.1.10.
Docker Compose-Dateien aktualisieren¶
Die OTOBO Docker Compose-Dateien wechseln von Release zu Release. Achten Sie deshalb darauf, jeweils das richtige Setup zu verwenden.
Bemerkung
Alle verfügbaren Releases finden Sie unter https://hub.docker.com/repository/docker/rotheross/otobo/tags
.
# Change to the otobo docker directory
docker_admin> cd /opt/otobo-docker
# Get the latest tags
docker-admin> git fetch --tags
# Update OTOBO docker-compose repository to version 10.x.y.
docker-admin> git checkout rel-10_x_y
Docker Compose .env-Datei überprüfen¶
Die .env-Datei kontrolliert den OTOBO Docker Container. In dieser Datei wird über die Variablen OTOBO_IMAGE_OTOBO, OTOBO_IMAGE_OTOBO_ELASTICSEARCH und OTOBO_IMAGE_OTOBO_NGINX festgelegt, welche Images verwendet werden. Ist kein spezifischer Wert für die Variablen angegeben, wird jeweils das neueste Image verwendet. Möchten Sie eine spezifische Version verwenden, fügen Sie diese hier ein.
Docker Images abrufen¶
Die gewünschten Images können mit Docker Compose von https://hub.docker.com/repository/docker/rotheross/ abgerufen werden.
# Change to the otobo docker directory
docker_admin> cd /opt/otobo-docker
# fetch the new images, either the default tag 'latest-10_1' or the specific version tag declared in .env
docker_admin> docker-compose pull
OTOBO aktualisieren¶
In diesem Schritt wird das Volume otobo_opt_otobo aktualisiert und folgende OTOBO Kommandozeilenbefehle ausgeführt:
- Admin::Package::ReinstallAll
- Admin::Package::UpgradeAll
- Maint::Config::Rebuild
- Maint::Cache::Delete
# stop and remove the containers, but keep the named volumes
docker_admin> docker-compose down
# copy the OTOBO software, while containers are still stopped
docker_admin> docker-compose run --no-deps --rm web copy_otobo_next
# start containers again, using the new version and the updated /opt/otobo
docker_admin> docker-compose up --detach
# a quick sanity check
docker_admin> docker-compose ps
# complete the update, with running database
docker_admin> docker-compose exec web /opt/otobo_install/entrypoint.sh do_update_tasks
# inspect the update log
docker_admin> docker-compose exec web cat /opt/otobo/var/log/update.log
**# For minor or major release upgrades, you also have to run the upgrade script (for example to upgrade from 10.0 to 10.1)**
root> docker exec -it otobo_web_1 perl scripts/DBUpdate-to-10.1.pl
Bemerkung
Running the above mentioned commands can be automated with the help of the script scripts/update.sh. This script runs the commands starting with the docker-compose pull command. Note that that calling the database upgrade scripts is not included.
docker_admin> ./scripts/update.sh --help
docker_admin> ./scripts/update.sh
#** For minor or major release upgrades, you also have to run the upgrade script (for example to upgrade from 10.0 to 10.1)**
docker_admin> docker exec -it otobo_web_1 perl scripts/DBUpdate-to-10.1.pl