1. Install docker using Apt or Yum 1a. So for CentOS i had to download and run a script on my machine to add the repository and install. 1b. Setup autostart of the service 1c. Configure my user so i can manage docker without sudo.
Then once its installed: 2a. Lookup the correct flags to use 2b. Find the correct image to run 2c. Learn how to map a local folder for persistence 2d. Learn how to open ports for the program to be accessible.
As a system administrator with 15+ years of experience, this is easy for me. But if I where to ask someone without any system experience to do this, I can for-see a lot of frustrating moments where they would give up.
Im sure that VMs have been tested and done as well, bringing their own different issues. We could add another layer of abstraction, like some type of orchestration tool, but then that needs to be supported and there will still be issues with the system underneath.
Maybe stat with something like lambda in AWS using their cloud9 instance as an IDE? It will cost a few $ but might help with the basics. However, this would only be good for very limited learning, so maybe add a small sysadmin crash course after that?
So maybe schedule it similar to this:
Basics: 10 days of coding in lambda using dynodb etc.
Systems: 2 days of devops using python to setup and control the environment
Rest of the course ....