- Container: environment that runs an applications that is not dependent on the OS. Kind of like a lightweight VM. Containers are stateless; if you need to update the components inside, create another container instead.
- Image: template to create a container. Its components are defined by a
Dockerfile. - Volume: storage area detached from the container for maintaining state. There are 4 types:
- Volumes: managed by Docker itself, they're stored in a separate part of the host filesystem (on Linux by default this would be
var/lib/docker/volumes). Useful for production deployments. - Bind mounts: mount a specific directory or file from the host to the container, such as a project folder. Useful for development.
- Volumes: managed by Docker itself, they're stored in a separate part of the host filesystem (on Linux by default this would be
- Tmpfs mounts: mount a temporary file system in the container, which is stored in the host system's memory only, not on disk. Useful for sensitive information that should not be persisted between container restarts or for performance reaso