relaunchd should have support for launching bhyve virtual machines and specifying their configuration within the job description. There are a lot of knobs that need fiddling, such as specifying the amount of RAM, CPU, and where the disks are. This could all be built into relaunchd, and it "might" be possible to do socket activation or IPC activation and proxy the request to the virtual machine. That would be really cool, and allow you to download a webserver VM and transparently map port 8000 on the host to port 80 on the VM (as an example).
@allanjude there hasn't been much activity on bhyveucl. Have you not had time to work on it, or is there a better way to launch bhyve VMs that I'm not aware of?
This is not a great fit for direct support in launchd because the VM runs in a completely different process space and not the usual fork()/exec() handover.
relaunchd should have support for launching bhyve virtual machines and specifying their configuration within the job description. There are a lot of knobs that need fiddling, such as specifying the amount of RAM, CPU, and where the disks are. This could all be built into relaunchd, and it "might" be possible to do socket activation or IPC activation and proxy the request to the virtual machine. That would be really cool, and allow you to download a webserver VM and transparently map port 8000 on the host to port 80 on the VM (as an example).
There is already some attempt at using UCL to launch VMs: https://github.com/allanjude/bhyveucl
@allanjude there hasn't been much activity on bhyveucl. Have you not had time to work on it, or is there a better way to launch bhyve VMs that I'm not aware of?