The following are two major differences between a Virtual Machine and a Container:
A Container’s system needs an underlying OS that provides the basic services to all of the containerized applications using VM support for isolation. Whereas, Virtual Machines have their own OS using hardware virtual machine support by the Hypervisor.
The container provides an abstract operating system, whereas a virtual machine provides an abstract machine that uses device drivers targeting the abstract machine.
If you are looking for an online course to learn Docker, you can enroll in the Docker Training Online course by Intellipaat
Also, watch this video on Docker vs VM to understand more: