There's one last thing I need to get my head around with respect to using FreeBSD jails as a replacement for docker/podman.
I generally configure containers as totally ephemeral. Any data or individual files that a container uses, and that I care to keep, resides outside the container. It is linked inside via volumes defined in the run shell script or compose file. In some cases even dumb things like root's .bashrc gets linked in so that nuking a container doesn't lose the shell history the next time something needs hand fettling (mediawiki, maintenance scripts, composer, bootstrap, and friends - yes, needs more automation).
Any time a container gets restarted, step one may be to delete the container (and associated volumes it creates), re-pull latest and instantiate fresh. This is pretty typical for Jellyfin for example.
Also, working this way means that the entire backup process can exist outside the container volumes and nothing redundant in /var/lib/docker needs to get backed up.
Anyway, I need to figure out how to achieve something similar under FreeBSD jails. I'm assuming there is something in ZFS that provides a similar type of functionality during jail startup but haven't dug into it yet.
Then there's the 'correct' and easy way on how to upgrade the software inside a jail (os components and services the container runs) that needs experimentation on my side. Some scripting to do.
Jails seem much more elegant but there is lot of old cruft and 'finger memory' to work around. Ha. A lot of stuff is pre-wired and ready to go for regular usage in Linux containers in comparison, I think.
The journey continues.