Have you ever come across a piece of software and wanted to try it out immediately? But the installation instructions are curl|sh which, besides security and safety concerns, only work on Linux and you happen to use FreeBSD? And building it from source code would require installing a bunch of dependencies?
Well, there is an obvious solution to all these problems: Use a VM! But how quickly can you get a VM up and running? With SSH properly configured. And the network. And a port exposed to the outside? This talk introduces a tool that does exactly that: create and configure temporary VMs in a low friction way.
Features include:
Create temporary VMs running in-memory from templates.
Automatic configuration of pf(4) for NAT, port forwarding, and optional strict filtering of outbound connections.
Automatic setup of SSH (including proper configuration of the host keys): Just do "ssh tmp0" and you're connected!
This talk will also give insights into various challenges in the design process such as:
How to coordinate between multiple instances without using a daemon?
How to keep state to a minimum?