Wprowadzenie

Ukończone

Wyobraź sobie, że pracujesz jako inżynier oprogramowania dla internetowego sprzedawcy odzieżowego na zewnątrz. Odpowiadasz za wdrażanie i aktualizowanie witryny sklepu internetowego sprzedawcy detalicznego, natywnej dla chmury, opartej na mikrousług aplikacji .NET.

Aby spełnić wymagania dotyczące projektu i ulepszyć elastyczne praktyki programistyczne zespołu, decydujesz się porównać ciągłą integrację i ciągłe wdrażanie (CI/CD) za pomocą funkcji GitHub Actions i usługi Azure Pipelines. Potoki CI/CD wykorzystują serię zautomatyzowanych kroków do kompilowania i wdrażania aplikacji od kompilacji po wszystkie środowiska.

Ponieważ obecny Internet ma architekturę mikrousług, a każda mikrousługa jest wprowadzana niezależnie, należy rozpocząć od skonfigurowania CI/CD dla jednej usługi.

Internetowy interfejs API platformy .NET o nazwie usługi produktuobsługuje wszystkie funkcje katalogu zaplecza witryny internetowej. W tym module zaimplementujesz potok CI/CD dla usługi produktowej.

Ten moduł przeprowadzi Cię przez następujące kroki:

  • Uwierzytelnij GitHub Actions w rejestrze kontenerów.
  • Bezpieczne przechowywanie poufnych informacji używanych przez funkcję GitHub Actions.
  • Zaimplementuj akcję w celu skompilowania obrazu kontenera dla mikrousługi.
  • Zmodyfikuj i zatwierdź kod mikrousługi, aby wyzwolić kompilację.
  • Zaimplementuj akcję w celu wdrożenia zaktualizowanego kontenera w klastrze usługi Azure Kubernetes Service (AKS).
  • Zmodyfikuj i zatwierdź chart Helm, aby wyzwolić wdrożenie.
  • Przywróć mikrousługę do poprzedniego wdrożenia.

Używasz własnej subskrypcji platformy Azure do wdrażania zasobów w tym module. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto .

Ważny

Aby uniknąć niepotrzebnych opłat w ramach subskrypcji platformy Azure, pamiętaj, aby usunąć zasoby platformy Azure po zakończeniu pracy z tym modułem.

Warunki wstępne

  • Koncepcyjna wiedza na temat praktyk metodyki DevOps.
  • Koncepcyjna wiedza na temat kontenerów, platformy Docker i usługi AKS.
  • Dostęp do subskrypcji platformy Azure z uprawnieniami właściciela.
  • Dostęp do konta usługi GitHub.
  • Możliwość uruchamiania kontenerów deweloperskich w programie Visual Studio Code lub GitHub Codespaces, skonfigurowana zgodnie z opisem w poniższej sekcji.

Kontener deweloperski

Ten moduł zawiera pliki konfiguracji, które definiują kontener deweloperski lub kontener deweloperski . Użycie kontenera deweloperskiego zapewnia ustandaryzowane środowisko, które jest wstępnie skonfigurowane przy użyciu wymaganych narzędzi.

Kontener deweloperski może działać w jednym z dwóch środowisk. Przed rozpoczęciem wykonaj kroki opisane w jednym z poniższych linków, aby skonfigurować środowisko, w tym zainstalowanie platformy Docker i niezbędnych rozszerzeń programu Visual Studio Code.