Thats basically the way I do it.
pvesh get /cluster/resources --output-format json-pretty | jq --arg k "lxc/$container_id" -r 'map(select(.id == $k))[].name, map(select(.id == $k))[].mem, map(select(.id == $k))[].maxmem, map(select(.id == $k))[].cpu')
Example using pvesh in proxmox. The data is available, just have to use it. I also prefer barebone approach.
I just built a Server using J5040 board. With 16gb ram (yes it works) a 500gb m.2 as system , 2x4tb ironwolf as ZFS mirror pool, 350 W power supply all in the node 304 fractal case for 550 euro.
Runs proxmox as hypervisor for VM or Container. As example LXC container for motioneye and syncthing
I use syncthing to collect my data from several devices (smartphones and PC) to my server at home, when I am in my home network.
Then, on the server, rclone takes over with various daily/weekly tasks and syncs the stuff to my cloud storage. Some encrypted some plain. From my mobile or my pc I have access to all the data either at home or via vpn as well as directly to the cloud backup.