Docker-containers, -installatiekopieën en -registers

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.

Wanneer u Docker gebruikt, maakt een ontwikkelaar een app of service en verpakt deze en de bijbehorende afhankelijkheden in een containerinstallatiekopieën. Een afbeelding is een statische weergave van de app of service en de bijbehorende configuratie en afhankelijkheden.

Als u de app of service wilt uitvoeren, wordt de installatiekopie van de app geïnstantieerd om een container te maken die wordt uitgevoerd op de Docker-host. Containers worden in eerste instantie getest in een ontwikkelomgeving of pc.

Ontwikkelaars moeten installatiekopieën opslaan in een register, dat fungeert als een bibliotheek met installatiekopieën en nodig is bij het implementeren naar productie-orchestrators. Docker onderhoudt een openbaar register via Docker Hub. Andere leveranciers bieden registers voor verschillende verzamelingen installatiekopieën, waaronder Azure Container Registry. Bedrijven kunnen ook on-premises een privéregister hebben voor hun eigen Docker-installatiekopieën.

Afbeelding 2-4 laat zien hoe installatiekopieën en registers in Docker betrekking hebben op andere onderdelen. Ook worden de meerdere registeraanbiedingen van leveranciers weergegeven.

A diagram showing the basic taxonomy in Docker.

Afbeelding 2-4. Taxonomie van Docker-termen en -concepten

Het register is vergelijkbaar met een boekenplank waarin installatiekopieën worden opgeslagen en beschikbaar zijn om containers te bouwen om services of web-apps uit te voeren. Er zijn on-premises privé-Docker-registers en in de openbare cloud. Docker Hub is een openbaar register dat wordt onderhouden door Docker, samen met het vertrouwde Docker-register, een oplossing op ondernemingsniveau. Azure biedt Azure Container Registry. AWS, Google en anderen hebben ook containerregisters.

Door installatiekopieën in een register te plaatsen, kunt u statische en onveranderbare toepassingsbits opslaan, inclusief alle bijbehorende afhankelijkheden op frameworkniveau. Deze installatiekopieën kunnen vervolgens worden geversied en geïmplementeerd in meerdere omgevingen en bieden daarom een consistente implementatie-eenheid.

Persoonlijke installatiekopieregisters, die on-premises of in de cloud worden gehost, worden aanbevolen wanneer:

  • Uw afbeeldingen mogen niet openbaar worden gedeeld vanwege vertrouwelijkheid.

  • U wilt een minimale netwerklatentie hebben tussen uw installatiekopieën en uw gekozen implementatieomgeving. Als uw productieomgeving bijvoorbeeld Azure Cloud is, wilt u uw installatiekopieën waarschijnlijk opslaan in Azure Container Registry , zodat de netwerklatentie minimaal is. Als uw productieomgeving op een vergelijkbare manier on-premises is, wilt u mogelijk een on-premises Docker-vertrouwd register hebben dat beschikbaar is binnen hetzelfde lokale netwerk.