intro 2 docker
TRANSCRIPT
Introduction to
DockerBuild, run and scale
About Me
● Vincent Sellier○ @vsellier
● Operations manager at eXo
Agenda
Enjoy...
1. Docker fundamentals2. Tools and Ecosystem
And demos
Dockerfundamentals
What is a container ?
What is Docker ?
● The docker engine is a wrapper for :○ Namespaces○ cgroups○ Union file systems
● Hide the underlying complexity
Union filesystem
Layer 1Layer 2
Layer 3Layer 4
Layer 5Active layer
Read
Write
3 important concepts
1. Immutability2. Rapidity3. Portability
Docker trends
Docker
Tools
Installation
● Supported by all recent linux distros○ Package managers○ One line installer○ CoreOs : Fully docker oriented distros
● Supported on Mac and Windows
docker-machine● Provision and configure docker hosts● almost 15 supported drivers
○ VirtualBox○ AWS○ GoogleCloud○ Microsoft Azure○ VMware vSphere○ OpenStack○ ...
Docker Hub
● Online service maintained by Docker inc● Image repository with versioning● Content trust● Public / Private spaces● A private registry is available
The Dockerfile
● Simple DSL to extend images○ Configure the base image○ Update the content○ Configure the startup behavior
● Each instruction results in one images layer
Data volumes
● Special directories excluded from the Union File System● Persistents● Sharable between containers
Networking and container links
● bind ports on docker hosts● link two containers or more
○ Configure the network○ Create an alias in the hosts file○ Inherit ENV instructions from the source container○ Support restart
docker-compose
● Define multi-container applications in one file● Manage container dependencies● Can build images● Scale applications
docker-swarm
● Docker clustering● Transparent for docker tools● Host selector● Support the new 1.9 docker network feature
docker-swarm
dockerdocker-compose
swarm-master
discovery service
docker hostdocker host
docker hostdocker host
Questions ?
Thanks