Introduction

Fullført

Tenk deg at du jobber som programvareingeniør for en utendørs klesforhandler på nettet. Du er ansvarlig for å distribuere og oppdatere forhandlerens nettbutikk, en skybasert, mikrotjenestebasert .NET-app.

For å oppfylle prosjektkravene og forbedre teamets smidige utviklingspraksis, bestemmer du deg for å sammenligne kontinuerlig integrasjon og kontinuerlig distribusjon (CI/CD) gjennom GitHub Actions og Azure Pipelines. CI/CD-datasamlebånd bruker en rekke automatiserte trinn for å kompilere og distribuere apper fra bygg gjennom alle miljøer.

Siden det gjeldende nettet har en mikrotjenestearkitektur, og hver mikrotjeneste distribueres uavhengig, starter du med å konfigurere CI/CD for én enkelt tjeneste.

NET-web-API-en, kalt produkttjenesten, støtter alle serverdelkatalogfunksjonene på nettstedet. I denne modulen implementerer du et CI/CD-datasamlebånd for produkttjenesten.

Denne modulen veileder deg gjennom følgende trinn:

  • Godkjenne GitHub-handlinger til et beholderregister.
  • Lagre sensitiv informasjon som GitHub-handlinger bruker på en sikker måte.
  • Implementere en handling for å bygge beholderbildet for en mikrotjeneste.
  • Endre og utfør mikrotjenestekoden for å utløse et bygg.
  • Implementere en handling for å distribuere den oppdaterte beholderen til en Azure Kubernetes Service (AKS)-klynge.
  • Endre og utfør et Helm-diagram for å utløse distribusjonen.
  • Tilbakestille mikrotjenesten til forrige distribusjon.

Du bruker ditt eget Azure-abonnement til å distribuere ressursene i denne modulen. Hvis du ikke har et Azure-abonnement, må du opprette en gratis konto før du begynner.

Important

Hvis du vil unngå unødvendige belastninger i Azure-abonnementet, må du slette Azure-ressursene dine når du er ferdig med denne modulen.

Prerequisites

  • Begrepsmessig kunnskap om Fremgangsmåter for DevOps.
  • Begrepsmessig kunnskap om beholdere, Docker og AKS.
  • Tilgang til et Azure-abonnement med eiertillatelser .
  • Tilgang til en GitHub-konto.
  • Mulighet til å kjøre utviklingsbeholdere i Visual Studio Code eller GitHub Codespaces, konfigurert som beskrevet i delen nedenfor.

Container for utvikling

Denne modulen inneholder konfigurasjonsfiler som definerer en utviklingsbeholder eller utviklingsbeholder. Bruk av en utviklerbeholder sikrer et standardisert miljø som er forhåndskonfigurert med de nødvendige verktøyene.

Utviklerbeholderen kan kjøre i ett av to miljøer. Før du begynner, følger du fremgangsmåten i en av følgende koblinger for å konfigurere miljøet, inkludert installasjon av Docker og de nødvendige Visual Studio Code-utvidelsene.