Introductie van de Docker-tool

Docker kan, wanneer perfect afgesteld, alleen de functies van meerdere servers uitvoeren, waardoor je bespaart op de kosten van het kopen van extra servers. Bovendien werkt Docker volgens het principe van Continuous Integration and Continuous Deployment (CI/CD), een DevOps-technologie die helpt om de code snel te implementeren.

Development
17 april 2020
Martijn van der Put

Wat is docker?

Docker is een tool waarmee je applicaties kunt creëren, implementeren en uitvoeren in containers.

Containers zijn niets meer dan een stuk software dat je helpt delen van een besturingssysteem te virtualiseren en helpt een applicatie uit te voeren door alle code en afhankelijkheden samen te voegen in een pakket.

Overweeg dit voorbeeld:

Mike, een ontwikkelaar, is gevraagd om een webapplicatie te maken in zijn organisatie. Om dit te doen, stelt hij een omgeving in met een Apache Tomcat-server erin. Hij voltooit de applicatie en informeert Andrew, de tester van de organisatie, om het op zijn systeem te testen. Andrew stelt een Tomcat-omgeving in op zijn systeem en voltooit het testproces. Andrew informeert Gary, de verantwoordelijke voor het implementeren van de applicatie in de productieomgeving, over de voltooiing van de test. Gary stelt ook een productie-Tomcat-omgeving in op zijn systeem.



Dus wat hier is gebeurd, is dat er drie keer een omgeving is opgezet, wat een complete verspilling van tijd is. Bovendien bestaat er een grote kans op fouten vanwege de verschillende Tomcat-versies die geïnstalleerd zijn door de drie belanghebbenden. Hier kan Docker helpen. Docker kan een enkele Tomcat-omgevingsafbeelding genereren die door alle drie de belanghebbenden kan worden gebruikt.

In eenvoudige bewoordingen is een afbeelding een bestand dat kan worden gebruikt om een applicatie in Docker uit te voeren. Je zult meer leren over afbeeldingen in de volgende berichten. Maar op dit moment gaan we je helpen Docker Desktop in te stellen.



Hoe installeer je Docker desktop? 

Als je een Windows-machine gebruikt, dan is het installeren van Docker Desktop net zo eenvoudig als het installeren van elke andere software. Hier zijn de stappen die nodig zijn om het te installeren:

Systeemvereisten

  • Windows 10 64-bits (Pro, Enterprise en Education) 
  • Ingeschakelde Hyper-V- en containers Windows-functies

Om Hyper-V te draaien, moet je het volgende hebben:

  • 4 GB RAM 
  • Ondersteuning voor hardwarevirtualisatie ingeschakeld in het BIOS 
  • Een 64-bits processor met SLAT (Second Level Address Translation)

Stappen om te installeren

  1. Download de Docker Desktop Installer.
  2. Zodra het bestand is gedownload, klik je op Docker Desktop Installer.exe om de installatie te starten.
  3. Voltooi de installatie door alle instructies op de installatiewizard te volgen nadat je de licentie hebt geaccepteerd en de installateur hebt gemachtigd om wijzigingen aan te brengen in je systeem. De wijzigingen omvatten het installeren van netwerkcomponenten gekoppeld aan de Docker-apps en ook het beheren van de Hyper-V-VM's.
  4. Klik op Voltooien om de installatie te voltooien.

 

Zodra het bestand is geïnstalleerd, klik je op het Docker Desktop-bestand in de geïnstalleerde directory om de toepassing te starten.

Nu Docker Desktop is geïnstalleerd, kun je een afbeelding gaan maken door instructies toe te voegen aan een Dockerfile en deze uit te voeren



Wat is een Dockerfile?

Een Dockerfile is een tekstbestand of een script dat verschillende commando's bevat die worden gebruikt om via de opdrachtregel een afbeelding te bouwen. Docker gebruikt deze Dockerfile om de instructies erin te lezen en afbeeldingen te maken. Een Dockerfile wordt normaal gesproken gebruikt om zaken te organiseren en het proces te vereenvoudigen. Het beste aan een Dockerfile is dat het een eenvoudige en duidelijke syntaxis gebruikt, waardoor het extreem eenvoudig is om te maken en uit te voeren. Ze staan zelfs toe om commentaar toe te voegen, net als andere programmeertalen.

Typisch beginnen Dockerfiles met het FROM-commando dat definieert vanaf waar het bouwproces moet starten. Dit wordt dan gevolgd door andere methoden, commando's en argumenten. Na het uitvoeren van het bestand in Docker, wordt een nieuwe afbeelding gemaakt die vervolgens kan worden gebruikt voor het maken van containers.

Dockerfile commands

  • ADD: Deze instructie wordt gebruikt om een nieuw bestand van een bron op de host te kopiëren en deze toe te voegen aan het bestandssysteem van de afbeelding op de ingestelde bestemming.
  • CMD: Deze instructie wordt gebruikt om een specifiek commando binnen de container uit te voeren. CMD specificeert de standaardargumenten van de uitvoerende container. Er kan slechts één CMD-instructie in de Dockerfile zijn. Als er meer dan één is, wordt alleen de laatste beschouwd.
  • ENTRYPOINT: Deze instructie helpt bij het instellen van een standaardtoepassing die elke keer kan worden gebruikt wanneer een container wordt gemaakt. Met andere woorden, het helpt bij het configureren van een container om het uit te voeren als een uitvoerbaar bestand.
  • ENV: Deze instructie wordt gebruikt om de omgevingsvariabelen in te stellen. Het stelt een variabele in op een waarde die op zijn beurt zal worden gebruikt in alle volgende instructies in de bouwfase.
  • FROM: Deze instructie is de belangrijkste in de hele Dockerfile en definieert de basisafbeelding die wordt gebruikt om het bouwproces te starten. Het initialiseert een nieuwe bouwfase en stelt de basisafbeelding in voor alle volgende instructies.
  • MAINTAINER: Deze instructie wordt gebruikt om de volledige naam en het e-mailadres van de maker van de afbeelding te definiëren.
  • RUN: Deze instructie voert alle commando's uit in een nieuwe laag. Dit zal bovenop de huidige afbeelding zijn. Het zal de resultaten vastleggen. De gecommitteerde afbeelding wordt vervolgens gebruikt voor de volgende stap in de Dockerfile.
  • USER: Deze instructie wordt gebruikt om de gebruikersnaam van de gebruiker die de container zal uitvoeren, in te stellen.

 

Dit zijn slechts enkele populaire commando's die vaak worden gebruikt bij het maken van een afbeelding met behulp van een Dockerfile. Er is nog veel meer om te verkennen en te gebruiken in je volgende Dockerfile.

De onderstaande afbeelding is een eenvoudig fragment van een Dockerfile. De code is toegevoegd aan een teksteditor en opgeslagen zonder enige extensie.



  • In deze Dockerfile wordt een Ubuntu-afbeelding gebruikt als basisafbeelding om het bouwproces te starten.
  • De MAINTAINER beschrijft de naam en het e-mailadres van de maker van de nieuwe afbeelding.
  • Het RUN-commando hier zal apt-get update uitvoeren om de nieuwste pakketversie van Ubuntu te verkrijgen.
  • De laatste instructie is CMD die echo zal uitvoeren met het meegeleverde parameter. Dit wordt alleen uitgevoerd wanneer we een container maken vanuit de afbeelding.

Conclusie

We hebben nu gelezen welke cruciale rol Docker heeft bij het efficiënt creëren, implementeren en uitvoeren van applicaties binnen geïsoleerde containers. Daarnaast hebben we kennisgemaakt met belangrijke Docker-opdrachten, waaronder ADD, CMD, ENTRYPOINT, ENV, FROM, MAINTAINER, RUN en USER. 


Wil je meer informatie? Neem dan contact op.

Cookies
Deze site gebruikt geanonimiseerde cookies. Klik op "Akkoord" als je akkoord gaat met het gebruik van cookies, of klik op "Aanpassen" om je voorkeuren te bepalen.
Deze site gebruikt geanonimiseerde cookies.