Pomysły dotyczące rozwiązań
Ten artykuł jest pomysłem na rozwiązanie. Jeśli chcesz, abyśmy rozszerzyli zawartość o więcej informacji, takich jak potencjalne przypadki użycia, alternatywne usługi, zagadnienia dotyczące implementacji lub wskazówki dotyczące cen, daj nam znać, przekazując opinię w usłudze GitHub.
Kontenery ułatwiają ciągłe kompilowanie i wdrażanie aplikacji. Organizując wdrażanie tych kontenerów przy użyciu platformy Kubernetes w usłudze Azure Kubernetes Service (AKS), można osiągnąć replikowalne klastry kontenerów, którymi można zarządzać.
Uwaga
Ten dokument dotyczy ciągłej integracji/ciągłego wdrażania dla kontenerów w usłudze Azure DevOps. Jeśli szukasz rozwiązań korzystających z usługi GitHub, zobacz DevOps with AKS (Metodyka DevOps z usługą AKS).
Potencjalne przypadki użycia
Konfigurując ciągłą kompilację w celu tworzenia obrazów kontenerów i orkiestracji, usługa Azure DevOps zwiększa szybkość i niezawodność wdrożenia.
Architektura
Pobierz plik programu Visio z tą architekturą.
Przepływ danych
- Zmień kod źródłowy aplikacji.
- Zatwierdź kod aplikacji.
- Ciągła integracja wyzwala kompilację aplikacji, kompilację obrazu kontenera i testy jednostkowe.
- Obraz kontenera wypchnięty do Azure Container Registry.
- Wyzwalacz ciągłego wdrażania organizuje wdrażanie artefaktów aplikacji z parametrami specyficznymi dla środowiska.
- Wdrażanie w usłudze Azure Kubernetes Service (AKS).
- Kontener jest uruchamiany przy użyciu obrazu kontenera z Azure Container Registry.
- Usługa Application Insights zbiera i analizuje dane dotyczące kondycji, wydajności i użycia.
- Przejrzyj informacje o kondycji, wydajności i użyciu.
- Aktualizuj element listy prac.
Składniki
- Container Registry: przechowywanie obrazów kontenerów i zarządzanie nimi we wszystkich typach wdrożeń platformy Azure
- Azure Kubernetes Service (AKS): Upraszczanie wdrażania, zarządzania i operacji platformy Kubernetes
- Application Insights: wykrywanie, klasyfikowanie i diagnozowanie problemów w aplikacjach internetowych i usługach
- Azure DevOps: tworzenie i wdrażanie aplikacji wieloplatformowych w celu uzyskania jak największej liczby usług platformy Azure