Nextcloud läuft lokal mittels Docker in einem LXC Container auf einem Proxmox-Server (V. 8.1.4 auf x86 64-Bit). Zur Installation verwende ich ein docker compose script (yml). Als Datenbank verwende ich MariaDB (der Fehler tritt sowohl mit Version 10.6 als auch 10.11 auf). Nextcloud läuft und man kann sowohl intern als auch extern zugreifen.
Unabhängig von der Nextcloud-Version (begonnen bei 27.x, zuletzt bei 28.0.1) schlägt ein Update immer fehl: Beim Zugriff auf Nextcloud erhalte ich als Fehlermeldung: “Internal Server Error”. In Portainer werden sowohl Nextcloud als auch die Datenbank als healthy angezeigt.
Was mache ich hier falsch?
Meine Vorgehensweise:
- docker compose pull nextcloud zum Laden der neuen Verseion (z.B. 28.0.2 zum Update von 28.0.1 – keine Versionssprünge o.ä.)
- docker compose up -d nextcloud zum Neustart des docker-Containers
Beim Versuch 28.0.1 auf 28.0.2 upzudaten erhalte ich folgende Log-Meldungen:
root@docker:~/nextcloud# docker compose logs -f nextcloud
nextcloud | Configuring Redis as session handler
nextcloud | Initializing nextcloud 28.0.2.5 …
nextcloud | Upgrading nextcloud from 28.0.1.1 …
nextcloud | cannot delete non-empty directory: db
nextcloud | => Searching for scripts (*.sh) to run, located in the folder: /docker-entrypoint-hooks.d/pre-upgrade
nextcloud | An unhandled exception has been thrown:
nextcloud | PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘nextcloud.oc_appconfig’ doesn’t exist in /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Connection.php:71
nextcloud | Stack trace:
nextcloud | #0 /var/www/html/3rdparty/doctrine/dbal/src/Driver/PDO/Connection.php(71): PDO->query(‘SELECT * FROM ...') nextcloud | #1 /var/www/html/3rdparty/doctrine/dbal/src/Connection.php(1100): Doctrine\DBAL\Driver\PDO\Connection->query('SELECT * FROM
…’)
nextcloud | #2 /var/www/html/lib/private/DB/Connection.php(261): Doctrine\DBAL\Connection->executeQuery(‘SELECT * FROM ...', Array, Array, NULL) nextcloud | #3 /var/www/html/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php(337): OC\DB\Connection->executeQuery('SELECT * FROM
…’, Array, Array, NULL)
nextcloud | #4 /var/www/html/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php(377): Doctrine\DBAL\Query\QueryBuilder->executeQuery()
nextcloud | #5 /var/www/html/lib/private/DB/QueryBuilder/QueryBuilder.php(280): Doctrine\DBAL\Query\QueryBuilder->execute()
nextcloud | #6 /var/www/html/lib/private/AppConfig.php(421): OC\DB\QueryBuilder\QueryBuilder->execute()
nextcloud | #7 /var/www/html/lib/private/AppConfig.php(187): OC\AppConfig->loadConfigValues()
nextcloud | #8 /var/www/html/lib/private/AppConfig.php(377): OC\AppConfig->getApps()
nextcloud | #9 /var/www/html/lib/private/App/AppManager.php(128): OC\AppConfig->getValues(false, ‘enabled’)
nextcloud | #10 /var/www/html/lib/private/App/AppManager.php(149): OC\App\AppManager->getInstalledAppsValues()
nextcloud | #11 /var/www/html/lib/private/legacy/OC_App.php(231): OC\App\AppManager->getInstalledApps()
nextcloud | #12 /var/www/html/lib/private/AppFramework/Bootstrap/Coordinator.php(90): OC_App::getEnabledApps()
nextcloud | #13 /var/www/html/lib/base.php(700): OC\AppFramework\Bootstrap\Coordinator->runInitialRegistration()
nextcloud | #14 /var/www/html/lib/base.php(1200): OC::init()
nextcloud | #15 /var/www/html/console.php(48): require_once(‘/var/www/html/l…’)
nextcloud | #16 /var/www/html/occ(11): require_once(‘/var/www/html/c…’)
nextcloud | #17 {main}