- What containers are and why they matter
- Containers vs Virtual Machines
- Docker overview: engine, CLI, registry
- Docker daemon, client, images, containers, registries
- Layers & the UnionFS concept
docker pull,run,ps,stop,rm,rmi- Detached mode, ports (
-p), environment vars (-e), volumes (-v) - Inspecting containers:
docker logs,exec,inspect
- Key instructions:
FROM,RUN,COPY,WORKDIR,CMD,EXPOSE,ENV - Build images (
docker build), tagging, caching - Lightweight and secure image best practices
- Docker Hub and private registries
docker push,docker login, image tags and versioning
- Bind mounts vs named volumes
- Typical use case: persisting database data
- Default bridge network
- Custom networks (
docker network create,connect) - Exposing services, container-to-container communication
- Intro to Docker Compose
- Structure of a
docker-compose.yml docker compose up/down, scaling services, environment variables
- Daemonless and rootless approach
- CLI compatibility:
alias docker=podman
- Rootless containers for better isolation
- Pod concept (groups of containers)
- Integration with
systemd - Compatibility notes and ecosystem tradeoffs