In teaching CS, students submit their code to our server and we compile and run with unit tests. Similar to Codeforces, Codewars, and HackerRank.
How should we be configuring servers for this? Launch a new minimal VM for each code submission? Is there a VM system and linux distribution ideal for this?
Or is there another mechanism for this purpose that is more efficient? Can a user account be configured to handle this safely? We're happy to recycle servers periodically.
We're not tied to any datacenter or service. So happy to use something like AWS Lambda if that's a viable option.