Try it.
Start with a base system (Ubuntu Server). Add an LXD and/or Docker Container. Test it. Try to maintain/update it. Twiddle with the networking. Try to backup your data. Then delete the container entirely, rebuild anew, and try to restore your data on the new container.
Some services require a VM; many don't, and can be hosted in a mere Container instead. An LXD Container looks and feels like a VM for many purposes.
Stay on top of your hardware: Consolidation means that a power supply failure or disk failure will take down everything. Know how old your hardware is and which UUID refers to which disk in the case. As hardware ages, start to keep spares on hand. Backups are vital -- set up proper backups for each service as you install it (don't wait). Test how to restore from backups and write yourself a checklist that's accessible when your server is down.
You will make changes. Lots of changes. You will add and delete containers and VMs. When you create a new service, make yourself a step-by-step checklist of how to rebuild it the same way (you won't remember). When you make a change, or add new software to a service or alter a config file, update your checklist. Containers in particular are disposable -- you might be rebuilding them in a couple years from scratch.