Introductie in Docker

11
Introductie in Docker Dennis Decoene

Transcript of Introductie in Docker

Page 1: Introductie in Docker

Introductie in DockerDennis Decoene

Page 2: Introductie in Docker

Lightweight Container draait op gemeenschappelijke kernel

om efficient gebruik te maken van RAM en CPU en snel te starten.

Open source Secure

Containers isoleren applicaties vanelkaar en onderliggende infrastructuur

Wat is docker

Page 3: Introductie in Docker

Verschil met Vitual Machines

Page 4: Introductie in Docker

Probleem van dev, staging, production omgevingen verminderd

Snelle afgeschermde microservices Stap naar scaling eenvoudiger Infrastructuur beschreven als code

(versiebeheer) Eenvoudiger opzetten en teardown van

(test-) omgevingen …

Waarom docker

Page 5: Introductie in Docker

Soort registry gecombineerd met github voor containers.

Officiele containers van open source projecten zoals redis, ubuntu, nginx, mysql, …

Ook niet officiële public containers

Persoonlijk:niet gemakkelijk om te zoeken

Docker Hub

Page 6: Introductie in Docker

Docker draait alleen op linux. Virtuele (linux) machine nodig.

Docker Toolbox to the rescue Docker Engine Docker Compose Docker Machine Kitematic Docker quickstart terminal

Docker development op OSX

Page 7: Introductie in Docker

Beschrijft de stappen om tot een running docker container te komen

Is de input voor “build”

Dockerfile

Page 8: Introductie in Docker

docker-compose dient om meerdere containers aan te maken ineens en te linken onderling

Vergeet niet de versie mee te geven! Version: “2” (let op 2 is een string!) Nieuw zijn volumes en networks

docker-compose.yml

Page 9: Introductie in Docker

Demo

Page 10: Introductie in Docker

Zie docker als een rol gebaseerde virtual machine. App, DB, …

Indien je ook andere services wil zoals DB of dergelijke, Dockerize early.

Docker is niet zo eenvoudig naar productie te brengen als het lijkt.

Sla geen user files op in je container, gebruik S3 of cloud storage. Ook logstash is interessant.

Opmerkingen