What is „Docker“?
• Docker != virtual machines
• Docker = OS-level
• Container and host share a kernel
• In short: improved chroot
• Available for Linux, Mac (boot2docker), Windows
(in the near future)
• Useful for servers and development environments
• Idea itself isn't new (FreeBSD jail - 1998)
• Docker makes it just easy
Docker Hub
• Repository for Images
• Images are versioned
• Changes of Images are stored like a „git commit“
• Many images for „mysql, php, apache, nginx,
gitlab, jenkins, …“
Dockerfile
• Instruction how to build the image
• Very easy (just normal „shell“ commands)
• Extend an existing Image
Persistent Data
• 2 ways to store persistent data
• Through aufs on the host (good)
• Through volumes linking from a data-only-container
(better)
Why data-only-container?
• Define "storing data" as an application and not
guess the host is able to do it
• Not every host is able to store the data in a way you
need it (Windows a-z == A-Z)
How to define a data-only-
container
• Just expose mountpoints with "VOLUME" in the
Dockerfile
• Data-only-container doesn't need to be running,
they just need to exist
• Ofc: care about backups