Configuration was not read or initialized correctly, not overwriting /app/www/public/config/config.php

I’m new to nextcloud and was having an issue uploading from android. I was getting permission error so changed it

Now I can’t getting into it and I get

Error

Configuration was not read or initialized correctly, not overwriting /app/www/public/config/config.php

I ran sudo chown -R www-data:www-data /mnt/cloud/nextcloud

My config file is

--

services:

nextcloud:

image: lscr.io/linuxserver/nextcloud:latest

container_name: nextcloud

environment:

  - PUID=1000

  - PGID=1000

  - TZ=Etc/UTC

volumes:

  - /mnt/cloud/nextcloud/config:/config

  - /mnt/cloud/nextcloud/data:/data

ports:

  - 447:443
 -8080-80
restart: unless-stopped

Log on portainer

───────────────────────────────────────

Linuxserver.io version: 34.0.3-ls447

Build-date: 2026-08-25T12:06:59+00:00

───────────────────────────────────────

using keys found in /config/keys

[custom-init] No custom files found, skipping…

[ls.io-init] done.

[migrations] started

[migrations] 01-nginx-site-confs-default: skipped

[migrations] 02-default-location: skipped

[migrations] done

usermod: no changes

───────────────────────────────────────

  ██╗     ███████╗██╗ ██████╗

  ██║     ██╔════╝██║██╔═══██╗

  ██║     ███████╗██║██║   ██║

  ██║     ╚════██║██║██║   ██║

  ███████╗███████║██║╚██████╔╝

  ╚══════╝╚══════╝╚═╝ ╚═════╝

Brought to you by linuxserver.io

───────────────────────────────────────

To support LSIO projects visit:

───────────────────────────────────────

GID/UID

───────────────────────────────────────

User UID: 1000

User GID: 1000

───────────────────────────────────────

Linuxserver.io version: 34.0.3-ls447

Build-date: 2026-08-25T12:06:59+00:00

───────────────────────────────────────

using keys found in /config/keys

[custom-init] No custom files found, skipping…

[ls.io-init] done.

Cannot write into “config” directory!

This can usually be fixed by giving the web server write access to the config directory.

But, if you prefer to keep config.php file read only, set the option “config_is_read_only” to true in it.

See Documentation Redirect

2026-09-01T09:50:00+00:00 3 fopen(/app/www/public/config/config.php): Failed to open stream: Permission denied at /app/www/public/lib/private/Config.php#221 | reqId=3v6Qls8vhPLib7xYFUd0 remoteAddr= user=-- app=PHP method= url=-- scriptName=/app/www/public/cron.php userAgent=-- version= occ_command=[“/app/www/public/cron.php”] data={“app”:“PHP”}

[migrations] started

[migrations] 01-nginx-site-confs-default: skipped

[migrations] 02-default-location: skipped

[migrations] done

usermod: no changes

───────────────────────────────────────

  ██╗     ███████╗██╗ ██████╗

  ██║     ██╔════╝██║██╔═══██╗

  ██║     ███████╗██║██║   ██║

  ██║     ╚════██║██║██║   ██║

  ███████╗███████║██║╚██████╔╝

  ╚══════╝╚══════╝╚═╝ ╚═════╝

Brought to you by linuxserver.io

───────────────────────────────────────

To support LSIO projects visit:

───────────────────────────────────────

GID/UID

───────────────────────────────────────

User UID: 1000

User GID: 1000

───────────────────────────────────────

Linuxserver.io version: 34.0.3-ls447

Build-date: 2026-08-25T12:06:59+00:00

───────────────────────────────────────

using keys found in /config/keys

[custom-init] No custom files found, skipping…

[ls.io-init] done.

Cannot write into “config” directory!

This can usually be fixed by giving the web server write access to the config directory.

But, if you prefer to keep config.php file read only, set the option “config_is_read_only” to true in it.

See Documentation Redirect

2026-09-01T09:55:00+00:00 3 fopen(/app/www/public/config/config.php): Failed to open stream: Permission denied at /app/www/public/lib/private/Config.php#221 | reqId=rM7bVXTZyrOWgBvtcthI remoteAddr= user=-- app=PHP method= url=-- scriptName=/app/www/public/cron.php userAgent=-- version= occ_command=[“/app/www/public/cron.php”] data={“app”:“PHP”}

Cannot write into “config” directory!

This can usually be fixed by giving the web server write access to the config directory.

But, if you prefer to keep config.php file read only, set the option “config_is_read_only” to true in it.

See Documentation Redirect

2026-09-01T10:00:00+00:00 3 fopen(/app/www/public/config/config.php): Failed to open stream: Permission denied at /app/www/public/lib/private/Config.php#221 | reqId=2I8pbXnmlG2MBbPtbza7 remoteAddr= user=-- app=PHP method= url=-- scriptName=/app/www/public/cron.php userAgent=-- version= occ_command=[“/app/www/public/cron.php”] data={“app”:“PHP”}

Cannot write into “config” directory!

This can usually be fixed by giving the web server write access to the config directory.

But, if you prefer to keep config.php file read only, set the option “config_is_read_only” to true in it.

See Documentation Redirect

2026-09-01T10:05:00+00:00 3 fopen(/app/www/public/config/config.php): Failed to open stream: Permission denied at /app/www/public/lib/private/Config.php#221 | reqId=YpVrLd7xZVi95gZ0BaKL remoteAddr= user=-- app=PHP method= url=-- scriptName=/app/www/public/cron.php userAgent=-- version= occ_command=[“/app/www/public/cron.php”] data={“app”:“PHP”}

This doesn’t look like a NixOS configuration or setup.

I think you have better chances for support in a nextcloud community or whatever configuration schema you are using there…