Intro 2 docker

Preview:

Citation preview

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

Recommended