Error 500 on new Docker Installation

I apologise in advance for any ignorance, but my Nextcloud (fpm-alpine) instance in Docker on MacOS is no longer working.

I have actually been running it successfully and reliably for a couple of years, but recently started getting an error 500 when trying to load the site.

Out of a certain amount of frustration and after spending a number of hours trying to fix it, I have ended up clearing the entire installation and trying from scratch - including wiping the Mac that it was installed on.

However I am still getting an Error 500 and I cannot work out why, for the life of me.

I can’t find anything in the nginx error logs of the Web or Proxy container, but have managed to find the following entry in the nextcloud.log log in my app container, which appears every time I try to access the site:

{“reqId”:“wilXwsefDlINHEKklBuq”,“level”:3,“time”:“2022-03-13T21:35:01+00:00”,“remoteAddr”:"",“user”:"–",“app”:“cron”,“method”:"",“url”:"–",“message”:“Not installed”,“userAgent”:"–",“version”:"",“exception”:{“Exception”:“Exception”,“Message”:“Not installed”,“Code”:0,“Trace”:[{“file”:"/var/www/html/lib/base.php",“line”:649,“function”:“checkInstalled”,“class”:“OC”,“type”:"::",“args”:[{“class”:“OC\SystemConfig”}]},{“file”:"/var/www/html/lib/base.php",“line”:1087,“function”:“init”,“class”:“OC”,“type”:"::",“args”:},{“file”:"/var/www/html/cron.php",“line”:43,“args”:["/var/www/html/lib/base.php"],“function”:“require_once”}],“File”:"/var/www/html/lib/base.php",“Line”:277,“CustomMessage”:"–"}}

I’m afraid out of my ignorance, I’m not exactly sure why this is happening and whether this is the root cause of the issue, although as it keeps happening everytime I access the site, and I can’t find any other logs indicating an error, I imagine it has something to do with it!

I also can’t work out how to rectify such an entry!

Is anyone able to help me with this at all or has experienced a similar issue?



I am currently running Docker Desktop 4.5.0 (74594).

My docker-compose.yml file is:

version: '3'

services:
  db:
    image: mariadb
    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
    restart: always
    volumes:
      - db:/var/lib/mysql
      - /Volumes/DR-1/Backups.other/NC-MariaDB:/var/NC-MariaDB
    environment:
      - MYSQL_ROOT_PASSWORD=[PASSWORD REDACTED]
    env_file:
      - db.env
    ports:
      - 3307:3306

  redis:
    image: redis:alpine
    restart: always
    command: redis-server --requirepass [PASSWORD REDACTED]

  app:
    build: .
    restart: always
    volumes:
      - nextcloud:/var/www/html
      - /Volumes/DR-2/Nextcloud:/var/www/html/data
      - /Volumes/DR-2:/var/Volumes/DR-2
      - /Volumes/DR-3:/var/Volumes/DR-3
      - /Volumes/DR-4:/var/Volumes/DR-4
    environment:
      - MYSQL_HOST=db
      - REDIS_HOST=redis
      - REDIS_HOST_PASSWORD=[PASSWORD REDACTED]
      - NEXTCLOUD_OVERWRITEPROTOCOL=https
      - NEXTCLOUD_OVERWRITEHOST=[HOST REDACTED]
    env_file:
      - db.env
    depends_on:
      - db
      - redis

  web:
    build: ./web
    restart: always
    volumes:
      - nextcloud:/var/www/html:ro
    environment:
      - VIRTUAL_HOST=[DOMAIN HOST REDACTED]
      - LETSENCRYPT_HOST=[DOMAIN HOST REDACTED]
      - LETSENCRYPT_EMAIL=[EMAIL REDACTED]
    depends_on:
      - app
    networks:
      - proxy-tier
      - default

  proxy:
    build: ./proxy
    restart: always
    ports:
      - 80:80
      - 443:443
    labels:
      com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: "true"
    volumes:
      - certs:/etc/nginx/certs:ro
      - vhost.d:/etc/nginx/vhost.d
      - html:/usr/share/nginx/html
      - /var/run/docker.sock:/tmp/docker.sock:ro
    networks:
      - proxy-tier

  letsencrypt-companion:
    image: nginxproxy/acme-companion
    restart: always
    volumes:
      - certs:/etc/nginx/certs
      - vhost.d:/etc/nginx/vhost.d
      - html:/usr/share/nginx/html
      - /var/run/docker.sock:/var/run/docker.sock:ro
    networks:
      - proxy-tier
    depends_on:
      - proxy

volumes:
  db:
  nextcloud:
  certs:
  vhost.d:
  html:

networks:
  proxy-tier:

And my Dockerfile is:

FROM nextcloud:fpm-alpine

RUN set -ex; \
    \
    apk add --no-cache \
        ffmpeg \
        imagemagick \
        procps \
        samba-client \
        supervisor \
#       libreoffice \
    ;

RUN set -ex; \
    \
    apk add --no-cache --virtual .build-deps \
        $PHPIZE_DEPS \
        imap-dev \
        krb5-dev \
        openssl-dev \
        samba-dev \
        bzip2-dev \
    ; \
    \
    docker-php-ext-configure imap --with-kerberos --with-imap-ssl; \
    docker-php-ext-install \
        bz2 \
        imap \
    ; \
    pecl install smbclient; \
    docker-php-ext-enable smbclient; \
    \
    runDeps="$( \
        scanelf --needed --nobanner --format '%n#p' --recursive /usr/local/lib/php/extensions \
            | tr ',' '\n' \
            | sort -u \
            | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \
    )"; \
    apk add --virtual .nextcloud-phpext-rundeps $runDeps; \
    apk del .build-deps

RUN mkdir -p \
    /var/log/supervisord \
    /var/run/supervisord \
;

COPY supervisord.conf /

ENV NEXTCLOUD_UPDATE=1

CMD ["/usr/bin/supervisord", "-c", "/supervisord.conf"]