There are many comparison between Docker and Virtual Machine in term of architecture.
Here're some summary on operational between Docker and Virtual Machine, based on my own understanding.
| VM | Docker | |
|---|---|---|
| Compatibility | 👍 | 👌 | 
| Virtualization | 👍 | 👌 | 
| Security | 👍 | 👌 | 
| Size | 👌 | 👍 | 
| Performance | 👌 | 👍 | 
| Scalability | 👌 | 👍 | 
Notes:
- Compatibility - VM has higher compatibility than docker, as docker is mostly compatible at Linux host.
 - Virtualization - VM provides virtualization from OS and up to application level, as docker is mostly done at application level.
 - Security - VM is more secure in general, as security in docker is highly susceptible or depending on host OS.
 - Size - Docker is lighter than VM.
 - Performance - Docker is faster than VM due to size.
 - Scalability - Docker can scale much better than VM due to the design.