I've run a self-hosted Nextcloud instance for many years and Docker is by far the easiest. I started off with a native installation and that can be a pain when upgrading the OS (Ubuntu in my case). I tried the snap version when that became available and was impressed by how easy it was, though administering it required a bit of learning as the file locations where all different.
Running it in Docker made it so much easier to administer (maybe add in the missing db indexes if there's a major version change).
If you want, I can paste my docker-compose.yml for reference as it's relatively complex.
The issue wasn't the Docker config, it was the web-based setup experience afterwards. If I messed up something minor, I'd have to blow away all the Docker containers and start fresh.
Running it in Docker made it so much easier to administer (maybe add in the missing db indexes if there's a major version change).
If you want, I can paste my docker-compose.yml for reference as it's relatively complex.