Containerise applications — write Dockerfiles, manage images, run containers, and use Docker Compose for multi-service setups.

Docker is the industry-standard container runtime.

Key concepts:
- Images vs Containers
- Dockerfile instructions (FROM, RUN, COPY, CMD, ENTRYPOINT, EXPOSE)
- Docker Compose for local multi-service development
- Docker networking (bridge, host, overlay)
- Docker volumes and persistent storage
- Multi-stage builds to reduce image size
- Pushing to Docker Hub / private registries

Best practices:
- Use official base images
- Run as non-root user
- Keep images small (alpine, distroless)
- Avoid storing secrets in images
- Use .dockerignore