For my latest project, I have had to experiment with many solutions to be able to provision isolated virtual machines on demand for users to complete challenges. This is my guide to setting up something similar in the hopes it will be useful to someone.