Introduction

Fuldført

Forestil dig, at du arbejder som softwaretekniker for en online forhandler af udendørs tøj. Du er ansvarlig for at udrulle og opdatere forhandlerens onlinebutiksfront, en cloudbaseret .NET-app, der er baseret på mikrotjenester.

For at opfylde projektkravene og forbedre dit teams agile udviklingspraksis beslutter du dig for at sammenligne løbende integration og løbende udrulning (CI/CD) via GitHub Actions og Azure Pipelines. CI/CD-pipelines bruger en række automatiserede trin til at kompilere og installere apps fra build via alle miljøer.

Da det aktuelle websted har en microservices-arkitektur, og hver mikrotjeneste udrulles uafhængigt af hinanden, starter du med at konfigurere CI/CD for en enkelt tjeneste.

NET-web-API'en, der kaldes produkttjenesten, understøtter alle backend-katalogfunktionerne på webstedet. I dette modul skal du implementere en CI/CD-pipeline for produkttjenesten.

I dette modul gennemgås følgende trin:

  • Godkend GitHub-handlinger til en objektbeholderregistreringsdatabase.
  • Gem følsomme oplysninger, som GitHub Actions bruger, sikkert.
  • Implementer en handling for at bygge objektbeholderbilledet til en mikrotjeneste.
  • Rediger og bekræft mikrotjenestekoden for at udløse et build.
  • Implementer en handling for at udrulle den opdaterede objektbeholder til en AKS-klynge (Azure Kubernetes Service).
  • Rediger og bekræft et Helm-diagram for at udløse udrulningen.
  • Gendan mikrotjenesten til den forrige udrulning.

Du kan bruge dit eget Azure-abonnement til at udrulle ressourcerne i dette modul. Hvis du ikke har et Azure-abonnement, skal du oprette en gratis konto , før du begynder.

Important

Hvis du vil undgå unødvendige gebyrer i dit Azure-abonnement, skal du slette dine Azure-ressourcer, når du er færdig med dette modul.

Prerequisites

  • Konceptuel viden om DevOps-praksisser.
  • Konceptuel viden om objektbeholdere, Docker og AKS.
  • Adgang til et Azure-abonnement med ejertilladelser .
  • Adgang til en GitHub-konto.
  • Mulighed for at køre udviklingsobjektbeholdere i Visual Studio Code eller GitHub Codespaces, konfigureret som beskrevet i følgende afsnit.

Udviklingscontainer

Dette modul indeholder konfigurationsfiler, der definerer en udviklingscontainer eller dev-container. Brug af en udviklingsobjektbeholder sikrer et standardiseret miljø, der er forudkonfigureret med de påkrævede værktøjer.

Udviklingsobjektbeholderen kan køre i et af to miljøer. Før du begynder, skal du følge trinnene i et af følgende links for at konfigurere dit miljø, herunder installere Docker og de nødvendige Visual Studio Code-udvidelser.