Man was war das für ein Abend neulich… Eigentlich wollte ich „nur“ von ownCloud 8.1.10 auf 9.1.3 aktualisieren. Dank Docker sollte das recht simpel sein. Da ich mir schon gedacht habe, dass es holprig wird, bin ich von Version zu Version gegangen. Erst auf Version 8.2.9 und dann auf 9.0.7, hier fingen dann die Probleme an. Während das Update ohne Fehler durchlief, konnte ich mich nicht mehr einloggen. Im Log laß ich dann: Base table or view not found: 1146 Table ‚oc_external_mounts‘ doesn’t exist
Fehler nach Update auf ownCloud 9.0.7
Na Klasse, da existiert irgendeine Tabelle nicht. Nach kurzem Googlen wusste ich dann, dass es an der App files_external liegt. Da ich diese meines Wissens nach nicht verwende, habe ich sie deaktiviert
1 |
docker exec -u www-data owncloud sh -c 'php ./occ app:disable files_external' |
Und schon konnte es weitergehen. Der letzte Schritt wäre jetzt ja sicher einfach getan, denn von Version 8.2.9 auf 9.0.7 wäre sicher ein größerer Sprung, als von 9.0.7 auf 9.1.3… Pustekuchen.
Fehler nach Update auf ownCloud 9.1.3
Direkt beim Update eine fette Meldung: Call to undefined method OCA\Federation\AppInfo\Application::setupCron() in /var/www/html/apps/federation/appinfo/update.php on line 23
Nach einigem Suchen bin ich darauf gestoßen, dass ein Update der Cloud im Docker doch nicht immer so ohne Aufwand aktualisiert werden kann. Kurzum: der apps-Ordner, der über ein Mapping eingebunden wird, muss halt mit den neuen Apps aus Version 9.1 gefüllt werden.
1 2 3 4 5 6 7 8 9 10 11 |
cd /pfad/zum/docker rm -R apps mkdir apps cd apps wget https://download.owncloud.org/community/owncloud-9.1.3.zip unzip owncloud-9.1.3.zip cp -R owncloud/apps/* . rm -R owncloud owncloud-9.1.3.zip cd .. chmod DERBENÖTIGTEMODUS -R apps chown -R DERBENÖTIGTEUSERUNDGRUPPE apps |
Nun sind die neuen Apps verfügbar und die Exception der federation-App sollte nicht mehr fliegen.
1 2 |
docker restart owncloud docker exec -u www-data owncloud sh -c 'php ./occ upgrade' |
Bei mir lief das Update dann sauber durch, warum auch immer wurde der Maintenance-Mode aber aktiv gelassen.
1 |
docker exec -u www-data owncloud sh -c 'php ./occ maintenance:mode --off' |
Nach ca. einer Stunde war also alles aktualisiert und es läuft auch prima. Die Daten sind alle da, die User-Zugänge sind unverändert und die geteilten Inhalte sind ebenfalls noch da. Zusätzlich sind die Share-Links erhalten geblieben.