Fresh docker install after previous installation: PDOException: SQLSTATE[42S02]:

Hi,

I am trying to re-install the owncloud server (using the docker installation guidelines from https://doc.owncloud.com/server/admin_manual/installation/docker/)

.env

OWNCLOUD_VERSION=10.0
OWNCLOUD_DOMAIN=localhost
ADMIN_USERNAME=admin
ADMIN_PASSWORD=passwd
HTTP_PORT=8080

docker-compose.yml

version: ‘2.1’

volumes:
files:
driver: local
mysql:
driver: local
backup:
driver: local
redis:
driver: local

services:
owncloud:
image: owncloud/server:{OWNCLOUD_VERSION} restart: always ports: - {HTTP_PORT}:8080
depends_on:
- db
- redis
environment:
- OWNCLOUD_DOMAIN={OWNCLOUD_DOMAIN} - OWNCLOUD_DB_TYPE=mysql - OWNCLOUD_DB_NAME=owncloud - OWNCLOUD_DB_USERNAME=owncloud - OWNCLOUD_DB_PASSWORD=owncloud - OWNCLOUD_DB_HOST=db - OWNCLOUD_ADMIN_USERNAME={ADMIN_USERNAME}
- OWNCLOUD_ADMIN_PASSWORD=${ADMIN_PASSWORD}
- OWNCLOUD_MYSQL_UTF8MB4=true
- OWNCLOUD_REDIS_ENABLED=true
- OWNCLOUD_REDIS_HOST=redis
healthcheck:
test: [“CMD”, “/usr/bin/healthcheck”]
interval: 30s
timeout: 10s
retries: 5
volumes:
- /media/root/Data:/mnt/data

db:
image: webhippie/mariadb:latest
restart: always
environment:
- MARIADB_ROOT_PASSWORD=owncloud
- MARIADB_USERNAME=owncloud
- MARIADB_PASSWORD=owncloud
- MARIADB_DATABASE=owncloud
- MARIADB_MAX_ALLOWED_PACKET=128M
- MARIADB_INNODB_LOG_FILE_SIZE=64M
healthcheck:
test: [“CMD”, “/usr/bin/healthcheck”]
interval: 30s
timeout: 10s
retries: 5
volumes:
- mysql:/var/lib/mysql
- backup:/var/lib/backup

redis:
image: webhippie/redis:latest
restart: always
environment:
- REDIS_DATABASES=1
healthcheck:
test: [“CMD”, “/usr/bin/healthcheck”]
interval: 30s
timeout: 10s
retries: 5
volumes:
- redis:/var/lib/redis

I stopped the server with

docker-compose down
and
docker-composer down --volume

I purged all the images with

docker rmi

removed all containers and volumes (which already was handled with the docker-composer down --volume command)

So I presume I have a new, untouched system (Linux/Ubuntu 18.04.1 LTS)

I reinitiate the whole server with

docker-compose up -d

which loads all the images

Log:

Starting owncloud-docker-server_redis_1 … done
Starting owncloud-docker-server_db_1 … done
Starting owncloud-docker-server_owncloud_1 … done
Attaching to owncloud-docker-server_redis_1, owncloud-docker-server_db_1, owncloud-docker-server_owncloud_1
db_1 | Cron is enabled, launching it!
db_1 | Starting cron daemon now…
owncloud_1 | Creating volume folders…
db_1 | > writing mariadb config
owncloud_1 | Creating hook folders…
redis_1 | > chown data directory
db_1 | gomplate version 3.1.0, build 2f357bd5 (2018-11-30T02:51:11Z)
db_1 | config is:
db_1 | input: /etc/templates/my.cnf.tmpl
db_1 | output: /etc/mysql/my.cnf
db_1 |
redis_1 | > starting redis service
owncloud_1 | Waiting for MySQL…
db_1 | rendered 1 template(s) with 0 error(s) in 535.155µs
redis_1 | 12:C 19 Aug 2019 01:17:44.277 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
redis_1 | 12:C 19 Aug 2019 01:17:44.277 # Redis version=5.0.5, bits=64, commit=47edd290, modified=0, pid=12, just started
redis_1 | 12:C 19 Aug 2019 01:17:44.277 # Configuration loaded
redis_1 | 12:M 19 Aug 2019 01:17:44.278 * Running mode=standalone, port=6379.
db_1 | > chown data directory
redis_1 | 12:M 19 Aug 2019 01:17:44.278 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
redis_1 | 12:M 19 Aug 2019 01:17:44.278 # Server initialized
redis_1 | 12:M 19 Aug 2019 01:17:44.278 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add ‘vm.overcommit_memory = 1’ to /etc/sysctl.conf and then reboot or run the command ‘sysctl vm.overcommit_memory=1’ for this to take effect.
db_1 | > starting mariadb service
db_1 | 190819 01:17:45 mysqld_safe Logging to ‘/var/lib/mysql/30a1068bdb12.err’.
db_1 | 190819 01:17:45 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
redis_1 | 12:M 19 Aug 2019 01:17:44.278 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command ‘echo never > /sys/kernel/mm/transparent_hugepage/enabled’ as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
redis_1 | 12:M 19 Aug 2019 01:17:44.278 * Ready to accept connections
owncloud_1 | wait-for-it: waiting 180 seconds for db:3306
owncloud_1 | wait-for-it: db:3306 is available after 0 seconds
owncloud_1 | Waiting for Redis…
owncloud_1 | wait-for-it: waiting 60 seconds for redis:6379
owncloud_1 | wait-for-it: redis:6379 is available after 0 seconds
owncloud_1 | Writing config file…
owncloud_1 | Fixing base perms…
owncloud_1 | Fixing data perms…
owncloud_1 | Fixing hook perms…
owncloud_1 | Upgrading server database…
owncloud_1 | An unhandled exception has been thrown:
owncloud_1 | PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘owncloud.oc_appconfig’ doesn’t exist in /var/www/owncloud/lib/composer/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:104
owncloud_1 | Stack trace:
owncloud_1 | #0 /var/www/owncloud/lib/composer/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php(104): PDO->query(‘SELECT * FROM ...') owncloud_1 | #1 /var/www/owncloud/lib/composer/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(852): Doctrine\DBAL\Driver\PDOConnection->query('SELECT * FROM…’)
owncloud_1 | #2 /var/www/owncloud/lib/private/DB/Connection.php(187): Doctrine\DBAL\Connection->executeQuery(‘SELECT * FROM ...', Array, Array, NULL) owncloud_1 | #3 /var/www/owncloud/lib/composer/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php(206): OC\DB\Connection->executeQuery('SELECT * FROM…’, Array, Array)
owncloud_1 | #4 /var/www/owncloud/lib/private/DB/QueryBuilder/QueryBuilder.php(141): Doctrine\DBAL\Query\QueryBuilder->execute()
owncloud_1 | #5 /var/www/owncloud/lib/private/AppConfig.php(301): OC\DB\QueryBuilder\QueryBuilder->execute()
owncloud_1 | #6 /var/www/owncloud/lib/private/AppConfig.php(80): OC\AppConfig->loadConfigValues()
owncloud_1 | #7 /var/www/owncloud/lib/private/AppConfig.php(278): OC\AppConfig->getApps()
owncloud_1 | #8 /var/www/owncloud/lib/private/legacy/app.php(1000): OC\AppConfig->getValues(false, ‘installed_versi…’)
owncloud_1 | #9 /var/www/owncloud/lib/private/Server.php(436): OC_App::getAppVersions()
owncloud_1 | #10 /var/www/owncloud/lib/composer/pimple/pimple/src/Pimple/Container.php(113): OC\Server->OC{closure}(Object(OC\Server))
owncloud_1 | #11 /var/www/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(108): Pimple\Container->offsetGet(‘MemCacheFactory’)
owncloud_1 | #12 /var/www/owncloud/lib/private/ServerContainer.php(86): OC\AppFramework\Utility\SimpleContainer->query(‘MemCacheFactory’)
owncloud_1 | #13 /var/www/owncloud/lib/private/Server.php(1195): OC\ServerContainer->query(‘MemCacheFactory’)
owncloud_1 | #14 /var/www/owncloud/lib/private/Server.php(593): OC\Server->getMemCacheFactory()
owncloud_1 | #15 /var/www/owncloud/lib/composer/pimple/pimple/src/Pimple/Container.php(113): OC\Server->OC{closure}(Object(OC\Server))
owncloud_1 | #16 /var/www/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(108): Pimple\Container->offsetGet(‘AppManager’)
owncloud_1 | #17 /var/www/owncloud/lib/private/ServerContainer.php(86): OC\AppFramework\Utility\SimpleContainer->query(‘AppManager’)
owncloud_1 | #18 /var/www/owncloud/lib/private/Server.php(1411): OC\ServerContainer->query(‘AppManager’)
owncloud_1 | #19 /var/www/owncloud/lib/private/legacy/app.php(346): OC\Server->getAppManager()
owncloud_1 | #20 /var/www/owncloud/lib/private/legacy/app.php(110): OC_App::getEnabledApps()
owncloud_1 | #21 /var/www/owncloud/lib/base.php(577): OC_App::loadApps(Array)
owncloud_1 | #22 /var/www/owncloud/lib/base.php(994): OC::init()
owncloud_1 | #23 /var/www/owncloud/console.php(64): require_once(’/var/www/ownclo…’)
owncloud_1 | #24 /var/www/owncloud/occ(11): require_once(’/var/www/ownclo…’)
owncloud_1 | #25 {main}

Why is this an issue?

PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘owncloud.oc_appconfig’ doesn’t exist in /var/www/owncloud/lib/composer/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:104

During a fresh install, all the files, includingSQL tables should be automatically generated.
So what’s wrong here and what am I missing?