I’d recommend dietpi and docker on your pi then manage services such as Immich with portainer and use caddy as a reverse proxy (super simple config and comes with things like let’s encrypt SSL built in). Also I’d suggest storing images on a mirrored raid array using two USB HDDs. And also storing an encrypted backup once a day somewhere on the cloud. Or at least in another location. This is what I’ve done anyway. Hope that gives you some things to look into!