I use Nextcloud only for the sync but I think it is too clunky and it uses too many resources, but I haven't found anything else that syncs from Android and iOS. After they are sync to Nextcloud I sync them somewhere else for permanent storage. I wish there was an easier solution.
Cloudflare tunnels so I don't have to open any port in my network. You can do this even with the Cloudflare free tier. And the byproduct is DNS for free for your domain name, I actually moved the Cloudflare because DNS was getting too expensive with my domain name provider.
No open ports. I run my services as a combination of Cloudflare, Tailscale and reverse proxy. The only exception is Plex, I keep a port open for Plex because I heavily use remote streaming.
Tailscale
What can you even do with such low specs? What's the use case?
Learning.
Invest some time in understanding Docker containers and then install something like Portainer (for example on top of Proxmox + VM, or ProxMOX + LXC, or some Linux or bare metal) and then installing new apps will become very trivial once you understand how to "create" the containers and how to map the volumes and ports.
The GUI runs on the browser, so you can code from iPad, etc.
Export the files via SMB on the NAS and mount them on the Plex server.
4k x265 down to 1080p (x264). Basically any Intel CPU that supports quicksync can do several simultaneous hardware transcodes.
I run Plex on an N100 MiniPC, including hardware transcoding. I have the media in another system running TrueNAS.
As long as you have Plex Pass, hardware transcoding is extremely good with moder QuickSync Intel processors, and specially good if you run Linux.