I store my pictures on a NAS jail. That directory is mounted read-only on another jail with NC and Memories. I like the guarantee that my gallery app cannot alter my files.
Also, many gallery apps don't allow browsing a directory tree. You have one level of "albums" and that's it. Memories support it. I have pictures 5-6 directories deep, following a system that makes sense to me.
I use wireguard as my main VPN to connect to my homelab from my phone and my laptops.
I also have an OpenVPN as a backup option, running behind sslh.
My same port on my router (443) serves both a webserver hosting photos, and that OpenVPN instance. This allows me to VPN into my home in most firewalled office networks.
Applications each have their own FreeBSD jails, so they're isolated.
ZFS incremental replication on top of regular app backups provide a quick recovery process should the hardware of that machine fail.
Moving those apps to the cloud would cost orders of magnitude more, for benefits I don't need.