Docker en containers

2018-06-16

Wat zijn containers?

Een aantal jaar geleden werd voor iedere nieuwe applicatie een aparte server ingericht. Aangezien men vooraf vaak niet wist hoeveel resources er nodig waren, werd er al snel een te krachtige en te dure server aangeschaft.

Dankzij de komst van virtualization en virtuele machines werd het mogelijk om servers optimaler te benutten door meerdere applicaties op één server te hosten. Op één server werden meerdere virtuele machines geplaatst. Het nadeel hierbij is echter dat iedere virtuele machine een eigen operating system. Dit betekent dus ook dat ieder operating system een licentie nodig heeft, gepacht en beheerd moet worden en resources van de server gebruikt.

Tegenwoordig komen we echter steeds vaker containers tegen. Deze containers zorgen ervoor dat de resources van een server nog efficiënter benut kunnen worden. De container zorgt namelijk voor isolatie tussen de applicaties. Er is hierbij maar één operating system nodig. Wel moet dit operating system de gekozen container technologie ondersteunen.

 

 

Wat is Docker?

Docker is de meest populaire container technologie van dit moment.

Een Docker container wordt opgebouwd vanuit en image. Dit is als het ware een blauwdruk van de daadwerkelijke container. Docker beheert een eigen publieke registry, met daarin meer dan honderdduizend images van applicaties. Je kunt deze applicaties meestal met één simpel commando uitrollen. Wil je bijvoorbeeld NGINX draaien op poort 80, dan doe je dit als volgt:

    $ docker run -p 80:80 nginx

Je kunt natuurlijk ook je eigen image maken en uitrollen.

Docker en containers kunnen zowel voor stateful als stateless applicaties gebruikt worden. We kunnen dus moderne, cloud-native, schaalbare, self-healing, portable applicaties uitrollen, maar ook klassieke applicaties.


Bekijk alle posts van Mike