Get docker toolbox here. After installation complete run Docker Quickstart Terminal. If you see error saying VT-X/AMD-x is required, turn on virtualisation in BIOS. After shell is successfully started, git clone the lab repository in the terminal and run Jupyter server as suggested in Udacity description for Windows. To access the notebook substitute localhost with default virtual machine IP (can be accessed by docker-machine ip default in cmd).
If you get out of memory exceptions when running cells, power off VM from Oracle VirtualBox, increase memory to 4GB, start VM and run Docker.
In EC2 Dashboard press Launch Instance. Choose Amazon Linux AMI, t2.micro and press Next: Instance Details. Leave everything default until you are on Configure Security Group pane. There create a new security rule SSH/TCP/22 rule for your public IP in CIDR format (if one IP in the range just add /32).
On pressing Launch, Key Pair popup appears. Choose Create a new key pair, type in key name specific to your instance and click Download Key Pair. Save .pem key to your keys folder. Finally, press Launch Instance.
Wait few minutes until instance gets up and running (or press View Instances and wait for Status Check column to show green tick).
Download Putty.exe and PuttyGen.exe . Follow instructions from sections Converting Your Private Key Using PuTTYgen and Starting a PuTTY Session of EC2 Connection Guide.
When connected, use Docker Basics tutorial to install Docker on your new instance. Go to DL assignments docker repository and follow the instructions to run docker. Go back to your instance security rules and add All traffic rule from your IP.
You can now access assignments from your host machine browser by connecting to http://<AWS instance public DNS>:8888