A Docker container is similar to a virtual machine. It basically allows you to run a pre-packaged "Linux box" inside a container. The main difference between a Docker container and a typical virtual machine is that Docker is not quite as isolated from the surrounding environment as a normal virtual machine would be. A Docker container shares the Linux kernel with the host operating system, which means it doesn't need to "boot" the way a virtual machine would. Since so much is shared, firing up a Docker container is a quick and cheap operation — in most cases you can bring up a full Docker container (the equivalent of a normal virtual machine) in the same time as it would take to run a normal command line program. This is great because it makes deploying complex systems a much easier and more modular process, but it's a different paradigm from the usual virtual machine approach and has some unexpected side effects for people coming from the virtualization world.
# Learning the Types of Docker Data Volumes
There are three main use cases for Docker data volumes: - To keep data around when a container is removed - To share data between the host filesystem and the Docker container - To share data with other Docker containers
# See also
- Docker Data Volumes on digitalocean.com
- Docker Volumes - docs.docker.com ![]()