So I can mess with, restart, break, and otherwise disrupt my home automation services/machines without impacting my son’s ability to access Plex or my wife’s blood sugar readings and treatment calculations (Nightscout running on a different VM not listed above), or the ability for the automated backups to run. It greatly takes the pressure off when something big breaks at the OS level for some reason because that means that not everything is offline. I can go a few days without home automation or without media but not without both at the same time.
Also, there are certain well known ports that can’t be remapped and retain the same functionality. For example, both openHAB and Plex use the same port for network discovery. If you remap one that means that one won’t work. Consequently, Plex and openHAB cannot be fully functional on the same host.
I’ve had mixed luck with Shinobi. Sometimes it will run amok and consume all the file handles on the machine causing everything else (even stuff running in containers) to fail.
It’s also easier for me to manage over all by keeping them separated in VMs. I can take a snapshot before running a big upgrade which takes seconds unlike the hours that would take to fully backup a physical machine before running a big upgrade.
I like OpenMediaVault for my NAS (another VM running on this machine not listed above) but I don’t want to do everything in OMV.
I no longer have a Windows, Mac, or Linux laptop. All we have now are Chromebooks. Having a virtual machine desktop I can log into periodically to do some administration or development or long running tasks (e.g. converting a video file so it works with Roku better) is what let’s me do this. It’s super nice to have a machine that lasts for 12 hours on a battery charge and the ability to access power or run long running tasks when I need to.
So for me, I have lots of good reasons to run separate VMs. Should any of the above change, because I have everything configured in Ansible (see Ansible Revisited) if I ever do want to consolidate it’s super simple to do so.
I think most OH users use nginx with a minority using Apache. I use HAProxy but mostly because it’s built into pfSense which is my firewall. Now that LetsEncrypt allows wild card certs and I pay for a domain name it makes it fairly easy as instead of messing with https://some.dyn.dns/openhab
which doesn’t always work for all services, I can use https://openhab.some.dns
.