Docker-terminologie

Tip

Deze inhoud is een fragment uit het eBook, .NET Microservices Architecture for Containerized .NET Applications, beschikbaar op .NET Docs of als een gratis downloadbare PDF die offline kan worden gelezen.

.NET Microservices Architecture for Containerized .NET Applications eBook cover thumbnail.

In deze sectie vindt u termen en definities waarmee u bekend moet zijn voordat u verder gaat met Docker. Zie de uitgebreide woordenlijst van Docker voor meer definities.

Containerinstallatiekopieën: een pakket met alle afhankelijkheden en informatie die nodig is om een container te maken. Een installatiekopieën bevatten alle afhankelijkheden (zoals frameworks) plus de implementatie- en uitvoeringsconfiguratie die moet worden gebruikt door een containerruntime. Meestal is een installatiekopieën afgeleid van meerdere basisinstallatiekopieën die op elkaar zijn gestapeld om het bestandssysteem van de container te vormen. Een installatiekopieën zijn onveranderbaar zodra deze is gemaakt.

Dockerfile: een tekstbestand met instructies voor het bouwen van een Docker-installatiekopieën. Het is net als een batchscript, de eerste regel geeft de basisinstallatiekopie aan om te beginnen en volg vervolgens de instructies voor het installeren van vereiste programma's, het kopiëren van bestanden, enzovoort, totdat u de gewenste werkomgeving krijgt.

Build: De actie van het bouwen van een containerinstallatiekopie op basis van de informatie en context van het Dockerfile, plus aanvullende bestanden in de map waarin de installatiekopie is gebouwd. U kunt installatiekopieën bouwen met de volgende Docker-opdracht:

docker build

Container: Een exemplaar van een Docker-installatiekopieën. Een container vertegenwoordigt de uitvoering van één toepassing, proces of service. Het bestaat uit de inhoud van een Docker-installatiekopieën, een uitvoeringsomgeving en een standaardset instructies. Wanneer u een service schaalt, maakt u meerdere exemplaren van een container op basis van dezelfde installatiekopieën. Of een batchtaak kan meerdere containers maken op basis van dezelfde installatiekopieën, waarbij verschillende parameters aan elk exemplaar worden doorgegeven.

Volumes: Bied een beschrijfbaar bestandssysteem aan dat door de container kan worden gebruikt. Omdat installatiekopieën alleen-lezen zijn, maar de meeste programma's naar het bestandssysteem moeten schrijven, voegen volumes een beschrijfbare laag toe, boven op de containerinstallatiekopieën, zodat de programma's toegang hebben tot een beschrijfbaar bestandssysteem. Het programma weet niet dat het toegang heeft tot een gelaagd bestandssysteem, het is gewoon het bestandssysteem zoals gebruikelijk. Volumes leven in het hostsysteem en worden beheerd door Docker.

Tag: Een markering of label die u kunt toepassen op afbeeldingen, zodat verschillende afbeeldingen of versies van dezelfde installatiekopieën (afhankelijk van het versienummer of de doelomgeving) kunnen worden geïdentificeerd.

Build met meerdere fasen: is een functie, omdat Docker 17.05 of hoger, waarmee u de grootte van de uiteindelijke installatiekopieën kunt verkleinen. Een grote basisinstallatiekopie met de SDK kan bijvoorbeeld worden gebruikt voor het compileren en publiceren en vervolgens kan een kleine basisinstallatiekopie met alleen runtime worden gebruikt om de toepassing te hosten.

Opslagplaats (opslagplaats):een verzameling gerelateerde Docker-installatiekopieën, gelabeld met een tag die de versie van de installatiekopieën aangeeft. Sommige opslagplaatsen bevatten meerdere varianten van een specifieke installatiekopie, zoals een installatiekopie met SDK's (zwaarder), een installatiekopie die alleen runtimes (lichter) bevat, enzovoort. Deze varianten kunnen worden gemarkeerd met tags. Eén opslagplaats kan platformvarianten bevatten, zoals een Linux-installatiekopieën en een Windows-installatiekopieën.

Register: een service die toegang biedt tot opslagplaatsen. Het standaardregister voor de meeste openbare installatiekopieën is Docker Hub (eigendom van Docker als organisatie). Een register bevat meestal opslagplaatsen van meerdere teams. Bedrijven hebben vaak privéregisters voor het opslaan en beheren van installatiekopieën die ze hebben gemaakt. Azure Container Registry is een ander voorbeeld.

Multi-arch-installatiekopieën: Voor meerdere architectuur (of meerdere platforms) is het een Docker-functie die de selectie van de juiste installatiekopieën vereenvoudigt, afhankelijk van het platform waarop Docker wordt uitgevoerd. Wanneer een Dockerfile bijvoorbeeld een basisinstallatiekopie aanvraagt van mcr.microsoft.com/dotnet/sdk:8.0 uit het register, wordt deze daadwerkelijk 8.0-nanoserver-ltsc2022, 8.0-nanoserver-1809 of 8.0-bullseye-slim, afhankelijk van het besturingssysteem en de versie waarop Docker wordt uitgevoerd.

Docker Hub: een openbaar register om installatiekopieën te uploaden en ermee te werken. Docker Hub biedt Hosting van Docker-installatiekopieën, openbare of privéregisters, buildtriggers en webhook, en integratie met GitHub en Bitbucket.

Azure Container Registry: een openbare resource voor het werken met Docker-installatiekopieën en de bijbehorende onderdelen in Azure. Dit biedt een register dat zich dicht bij uw implementaties in Azure bevindt en waarmee u controle hebt over toegang, zodat u uw Azure Active Directory-groepen en -machtigingen kunt gebruiken.

Docker Trusted Registry (DTR):een Docker-registerservice (van Docker) die on-premises kan worden geïnstalleerd, zodat deze zich in het datacenter en netwerk van de organisatie bevindt. Het is handig voor privé-installatiekopieën die binnen de onderneming moeten worden beheerd. Docker Trusted Registry is opgenomen als onderdeel van het Docker Datacenter-product.

Docker Desktop: Ontwikkelhulpprogramma's voor Windows en macOS voor het lokaal bouwen, uitvoeren en testen van containers. Docker Desktop voor Windows biedt ontwikkelomgevingen voor linux- en Windows-containers. De Linux Docker-host in Windows is gebaseerd op een virtuele Hyper-V-machine . De host voor Windows-containers is rechtstreeks gebaseerd op Windows. Docker Desktop voor Mac is gebaseerd op het Apple Hypervisor-framework en de xhyve hypervisor, die een virtuele Linux Docker-hostmachine op macOS biedt. Docker Desktop voor Windows en voor Mac vervangt Docker Toolbox, die was gebaseerd op Oracle VirtualBox.

Opstellen: Een opdrachtregelprogramma en YAML-bestandsindeling met metagegevens voor het definiëren en uitvoeren van toepassingen met meerdere containers. U definieert één toepassing op basis van meerdere installatiekopieën met een of meer .yml bestanden die waarden kunnen overschrijven, afhankelijk van de omgeving. Nadat u de definities hebt gemaakt, kunt u de hele toepassing met meerdere containers implementeren met één opdracht (docker-compose up) waarmee een container per installatiekopie op de Docker-host wordt gemaakt.

Cluster: Een verzameling Docker-hosts die worden weergegeven alsof het één virtuele Docker-host is, zodat de toepassing kan worden geschaald naar meerdere exemplaren van de services verspreid over meerdere hosts binnen het cluster. Docker-clusters kunnen worden gemaakt met Kubernetes, Azure Service Fabric, Docker Swarm en Mesosphere DC/OS.

Orchestrator: een hulpprogramma dat het beheer van clusters en Docker-hosts vereenvoudigt. Met Orchestrators kunt u hun installatiekopieën, containers en hosts beheren via een opdrachtregelinterface (CLI) of een grafische gebruikersinterface. U kunt containernetwerken, configuraties, taakverdeling, servicedetectie, hoge beschikbaarheid, Docker-hostconfiguratie en meer beheren. Een orchestrator is verantwoordelijk voor het uitvoeren, distribueren, schalen en herstellen van workloads in een verzameling knooppunten. Orchestrator-producten zijn doorgaans dezelfde producten die clusterinfrastructuur bieden, zoals Kubernetes en Azure Service Fabric, en andere aanbiedingen op de markt.