Question about storage for Nextcloud

up until now, Nextcloud has been used minimally, more or less only testing my configuration.
As the next stop, Nextcloud should take over management of my photos, especially because I am being cross-platform-bound (Windows, MacOS, iOS, iPadOS) and have couple of things I want to achieve.

First, I want some space “for some stuff”. Just as a file-drop repository to transfer to the iPhone and vice-versa. I also need this for my KeePass-Database, which is being accessed from all platforms.
Then I want photos. Nextcloud must have access to them, to be able to build a database, but I think I’ll also want to keep SMB access, meaning it must remain on the standard share. I would also prefer to have one big share, then more smaller ones. So the photos would reside there, and Nextcloud server would mount it.
Btw. the big share I am talking about, is a ZFS array of 10 disks, managed by TrueNAS.
Now, the Nextcloud-Data folder… this is where my ideas get hazy. Nextcloud-Server resides on a quite limited NVMe flash drive. The data should be somewhere else. Now, I could mount an NFS share on TrueNAS and simply put my Nextcloud-Data there. If that is a good idea?
Or should I rather go for something more elegant, like creating an iSCSI Target on TrueNAS, and creating a vmdk for Nextcloud, that resides on TrueNAS (ZFS Array)? I have a feeling the 2nd option is more stable and performs better too. But I’d like to hear your opinion. Besides, having a vmdk on an array, I am merely bound by the size of the array. I would however rather choose thick than thin provisioned. Just give it 10gig and call it a day.

I believe with time, I will have further use, so I just want to keep my options open.

You foresee any issues in my config?


The answers to most of these is “it depends”.

You’re asking a lot of open ended questions. The answers will vary for reasons like personal preference, what you’re comfortable with, your specific hardware, your specific concerns, to technical debates.

There are a number of reasonable answers, but others can’t give concrete guidance without getting deep into the specifics of your hardware platform or your biggest concerns.

It also sounds like towards the end of your brainstorming you may have arrived at an architecture that sounds best to you. :slight_smile:

You may get some better feedback if you create individual posts narrowly focused on only one or two of these questions at a time. As it is right now I think people that might have useful feedback for some of your areas of interest are being deterred (or not seeing your entire post) because all the context is a lot to wade through.

If you get feedback on each these areas individually you can start to pull things together in a way that makes sense to you.

You’re asking good questions - it’s just challenging to get deeply into these all at once. You may also simply want to prototype these and try things out incrementally. As long as your data is backed up, you have options.

I’m doing something similar. I have the main NextCloud filesystem mounted at /Cloud/NextCloud/ where the database (I use sqlite3) and user files are. However all the photos are stored in /home/group/photo/cloud (within the /home/group/photo filesystem) which is included in NC as the folder Photos. The arrangement allows for local interrogation and bulk changes, but retains the NC capability for remote machines.

If you do anything like this though, remember that after any change you will need to run:
$ /bin/php <nextcloud root>/occ files:scan –path=“<user>/files/Photos”
to update the database. For reference my machine is configures with 6 SATA disks configures as a RAID5 + hot spare and LVM provides the partitioning. Filesystems are a historic mix of ext3/ext4 and xfs.