LXD is something you can easily configure from cloud-init:
https://docs.cloud-init.io/en/latest/reference/modules.html#...
And then set up the subcontainers with their own cloud-init:
https://docs.cloud-init.io/en/latest/tutorial/lxd.html
So I am guessing this might appeal more broadly.