Toepassingsinstallatiekopieën begrijpen

Voltooid

Een containerinstallatiekopieën zijn een essentieel onderdeel van een gedistribueerde toepassing die gebruikmaakt van Azure Kubernetes Service (AKS). U kunt tags gebruiken voor het volgende:

  • Maak verschillende containerinstallatiekopieën die u nodig hebt.
  • Sla uw installatiekopieën op in een containerregister.
  • Implementeer een bepaalde gelabelde installatiekopieën.

In deze les verkent u hoe uw CI/CD-pijplijn gelabelde toepassingsinstallatiekopieën gebruikt.

Containerinstallatiekopieën

Een containerinstallatiekopieën is een uitvoerbare softwarebundel die een toepassing en alle bijbehorende softwareafhankelijkheden inkapselt. In deze module wordt een Docker-containerinstallatiekopieën gebruikt om de Contoso-websitetoepassing te bouwen.

De Docker-installatiekopieën bevatten de toepassingscode en eventuele afhankelijkheden die nodig zijn om een volledig uitvoerbare installatiekopieën van de toepassing te maken. De containerinstallatiekopieën worden geconfigureerd door een Dockerfile met een set instructies voor de containerruntime.

Als u de Dockerfile in de hoofdmap van uw fork bekijkt, ziet u dat de installatiekopieën beginnen met een andere nginx-installatiekopieën als basis. In plaats van helemaal opnieuw te beginnen, is het gebruikelijk om te beginnen met andere afbeeldingen met de bestanden die u nodig hebt.

U bouwt een installatiekopieën van een Dockerfile met behulp van de docker build opdracht.

Belangrijk

De docker build opdracht werkt niet binnen de Cloud Shell-omgeving, omdat het gebruik van Docker in een actieve container niet is toegestaan. Als u de docker build . opdracht wilt testen, kloont u de opslagplaats lokaal en voert u de opdracht uit met behulp van uw eigen Docker-installatie.

Labels voor installatiekopieën

Tags zijn een belangrijk aspect van het werken met containerinstallatiekopieën. Tags kunnen u het type afbeelding vertellen en onderscheid maken tussen meerdere afbeeldingen met dezelfde naam.

Als u bijvoorbeeld wilt dat de Node.js-installatiekopieën in een opslagplaats beginnen vanaf Node 12, kunt u de tag FROM node:12 opnemen in het Dockerfile. Als u met de laatste stabiele versie wilt beginnen, kunt u de tag FROM node:current gebruiken. Tags geven het type afbeelding aan en wat er naar verwachting moet worden uitgevoerd.

Het bouwen van een containerinstallatiekopieën maakt gebruik van dezelfde techniek als het maken van een GitHub-opslagplaats en het Docker-containerpad is meestal iets als opslagplaats-/installatiekopieënnaam. Maar u kunt meerdere versies van dezelfde installatiekopieën bouwen die tags gebruiken om deze te onderscheiden.

In deze module gebruikt u tags voor het labelen van releaseversies. U maakt een tag voor elke productieversie met behulp van v*.*.* semantische versiebeheerregels, zoals v1.0.0 voor versie 1.0.0. Elke getagde push naar de hoofdbranch genereert een nieuwe afbeeldingstag met dezelfde naam als de tag op die push. Niet-gemarkeerde pushes genereren alleen de latest tag.

Alle pushes, getagd en niet-gemarkeerd, werken de latest installatiekopieën bij met de meest recente code en implementeren deze in fasering. De installatiekopieën met een label v* worden ook geïmplementeerd in productie. Alleen officiële gelabelde installatiekopieën worden geïmplementeerd in productie, terwijl zowel de faserings- als de productieomgeving altijd de latest gefaseerde installatiekopieën hebben.

Containerregisters

Een belangrijk aspect van het werken met een afbeelding is waar deze wordt opgeslagen. Een containerregister is een plaats waar containerinstallatiekopieën worden opgeslagen. GitHub is bijvoorbeeld een containerregister waarin ook codewijzigingen en versies worden opgeslagen. U kunt nieuwe toepassingsinstallatiekopieën naar containerregisters pushen met behulp van de docker push opdracht.

In deze module slaat u toepassingsinstallatiekopieën op in de Azure Container Registry-instantie die u in de vorige les hebt gemaakt. Nadat u een persoonlijk toegangstoken (PAT) hebt gemaakt en een federatief certificaat hebt opgegeven voor verificatie met GitHub en Azure, automatiseert de pijplijn in feite zowel de docker build als docker push de opdrachten.

Nu u CI/CD-pijplijnen en gelabelde containerinstallatiekopieën begrijpt, gaat u verder met de volgende les om te beginnen met het bouwen van uw GitHub Actions CI/CD-pijplijn.

Test uw kennis

1.

Wat is een Docker-installatiekopieën?

2.

Hoe kan een CI/CD-pijplijn afbeeldingstags gebruiken?

Controleer uw antwoorden