Docker provides a platform to package and run applications in a container.
Overview
Docker runs containers which are lighter than a VM. Processes in the container
will run using the host kernel. Images must match the kernel architecture (e.g. linux/amd64
)
When running on Windows or MacOS, Docker containers will be run within a Linux VM. This is usually OK for development or testing as the typical production deployment will eventually be a Linux environment.
References
- Docker overview
- Images for multiple platforms: Multi-arch All The Things
Architecture
dockerd
is the docker daemon process running a docker server. There is a separate command line client named docker
.
This client server architecture means that docker
and dockerd
are not necessarily running on the same machine.
Once dockerd
is started you can run commands using docker
.