To be fair, the add-ons are just containers installed and managed by HA. In most cases, you can install all of them as separate containers via something like Docker, but configuration takes more steps (though you also get more control).
Example: I have HA, Eclipse mosquitto, zigbee2mqtt, zwave-js-ui, node-red, Grafana, and influxdb all running as docker containers on two different devices (my main HA host wasn't ideal for Zigbee and zwave USB dongles, so those are on a Pi 4). The other containers are accessible separately or from within HA as iFrame panels.