Übung: Einrichten Ihrer Umgebung
In diesem Abschnitt stellen Sie sicher, dass Ihre Azure DevOps-Organisation so eingerichtet ist, dass Sie den Rest dieses Moduls absolvieren können. Außerdem erstellen Sie die Azure App Service-Umgebungen, für die Sie bereitstellen möchten.
So erreichen Sie diese Ziele:
- Fügen Sie einen Benutzer hinzu, um sicherzustellen, dass Azure DevOps eine Verbindung mit Ihrem Azure-Abonnement herstellen kann.
- Richten Sie ein Azure DevOps-Projekt für dieses Modul ein.
- Verschieben Sie in Azure Boards die Arbeitsaufgabe für dieses Modul in die Spalte "Ausführen ".
- Stellen Sie sicher, dass Ihr Projekt lokal eingerichtet ist, damit Sie Änderungen an die Pipeline übertragen können.
- Erstellen Sie die Azure App Service-Umgebungen mithilfe der Azure CLI in Azure Cloud Shell.
- Erstellen Sie Pipelinevariablen, die die Namen Ihrer App Service-Umgebungen definieren.
- Erstellen Sie eine Dienstverbindung, mit der Azure Pipelines sicher auf Ihr Azure-Abonnement zugreifen können.
- Führen Sie eine anfängliche Bereitstellung aus.
Hinzufügen eines Benutzers zu Azure DevOps
Um dieses Modul abzuschließen, benötigen Sie Ihr eigenes Azure-Abonnement. Sie können kostenlos mit Azure beginnen.
Obwohl Sie kein Azure-Abonnement benötigen, um mit Azure DevOps zu arbeiten, verwenden Sie hier Azure DevOps, um Ressourcen bereitzustellen, die in Ihrem Azure-Abonnement vorhanden sind. Verwenden Sie zum Vereinfachen des Prozesses dasselbe Microsoft-Konto, um sich sowohl bei Ihrem Azure-Abonnement als auch bei Ihrer Azure DevOps-Organisation anzumelden.
Wenn Sie unterschiedliche Microsoft-Konten verwenden, um sich bei Azure und Azure DevOps anzumelden, fügen Sie ihrem DevOps-Unternehmen unter dem Microsoft-Konto, das Sie für die Anmeldung bei Azure verwenden, einen Benutzer hinzu. Weitere Informationen finden Sie unter Hinzufügen von Benutzern zu Ihrer Organisation oder Ihrem Projekt. Wenn Sie den Benutzer hinzufügen, wählen Sie die Standardzugriffsebene aus.
Melden Sie sich dann bei Azure DevOps ab, und melden Sie sich erneut unter dem Microsoft-Konto an, mit dem Sie sich bei Ihrem Azure-Abonnement anmelden.
Abrufen des Azure DevOps-Projekts
Hier stellen Sie sicher, dass Ihre Azure DevOps-Organisation eingerichtet ist, um den Rest dieses Moduls abzuschließen. Sie richten sie ein, indem Sie eine Vorlage ausführen, mit der in Azure DevOps ein Projekt erstellt wird.
Die Module in diesem Lernpfad sind fortschreitend angeordnet. Sie folgen dem Tailspin-Webteam auf seiner DevOps-Journey. Zu Lernzwecken ist jedem Modul ein Azure DevOps-Projekt zugeordnet.
Ausführen der Vorlage
Führen Sie eine Vorlage aus, die Ihre Azure DevOps-Organisation einrichtet.
Rufen Sie das ADOGenerator-Projekt in Visual Studio oder der IDE Ihrer Wahl ab, und führen Sie es aus.
Wenn Sie aufgefordert werden, die Vorlagennummer aus der Liste der Vorlagen einzugeben, geben Sie "34 " für " Veröffentlichungsrhythmen verwalten" in Azure Pipelines mit Bereitstellungsmustern ein, und drücken Sie dann die EINGABETASTE.
Wählen Sie Ihre Authentifizierungsmethode aus. Sie können ein persönliches Zugriffstoken (PERSONAL Access Token, PAT) einrichten und verwenden oder die Geräteanmeldung verwenden.
Hinweis
Wenn Sie einen PAT einrichten, müssen Sie die erforderlichen Bereiche autorisieren. Für dieses Modul können Sie vollzugriff verwenden, aber in einer realen Situation sollten Sie sicherstellen, dass Sie nur die erforderlichen Bereiche gewähren.
Geben Sie Den Namen Ihrer Azure DevOps-Organisation ein, und drücken Sie dann die EINGABETASTE.
Wenn Sie dazu aufgefordert werden, geben Sie Ihren Azure DevOps PAT ein, und drücken Sie dann die EINGABETASTE.
Geben Sie einen Projektnamen wie Space Game - Web - Bereitstellungsmuster ein, und drücken Sie dann die EINGABETASTE.
Nachdem Ihr Projekt erstellt wurde, wechseln Sie in Ihrem Browser (at
https://dev.azure.com/<your-organization-name>/
) zu Ihrer Azure DevOps-Organisation, und wählen Sie das Projekt aus.
Forken des Repositorys
Falls noch nicht geschehen, erstellen Sie einen Fork des Repositorys "mslearn-tailspin-spacegame-web-deploy".
Öffnen Sie auf GitHub das mslearn-tailspin-spacegame-web-deploy Repository.
Wählen Sie Fork oben rechts auf dem Bildschirm aus.
Wählen Sie Ihr GitHub-Konto als Besitzer und dann Fork erstellen aus.
Von Bedeutung
Die Seite "Azure DevOps-Umgebung bereinigen" in diesem Modul enthält wichtige Bereinigungsschritte. Durch das Bereinigen stellen Sie sicher, dass Sie weiterhin über kostenlose Erstellungsminuten verfügen. Führen Sie unbedingt die Bereinigungsschritte durch, auch wenn Sie dieses Modul nicht absolvieren.
Festlegen der Sichtbarkeit Ihres Projekts
Zunächst ist Ihr Fork des Repositorys „Space Game“ auf GitHub auf „Public“ (Öffentlich) festgelegt, während das mit der Azure DevOps-Vorlage erstellte Projekt auf „Private“ (Privat) festgelegt ist. Auf eine öffentliches Repository auf GitHub kann jeder zugreifen, während ein privates Repository nur für Sie und die Personen zugänglich ist, für die Sie es freigeben möchten. Auf ähnliche Weise bieten öffentliche Projekte in Azure DevOps schreibgeschützten Zugriff für nicht authentifizierte Benutzer, während private Projekte erfordern, dass Benutzern Zugriff gewährt wird und sie authentifiziert werden, um auf die Dienste zuzugreifen.
Derzeit ist es nicht erforderlich, diese Einstellungen für die Zwecke dieses Moduls zu ändern. Für Ihre persönlichen Projekte müssen Sie jedoch die Sichtbarkeit und den Zugriff bestimmen, den Sie anderen gewähren möchten. Bei einem Open-Source-Projekt können Sie z. B. sowohl Ihr GitHub-Repository als auch das Azure DevOps-Projekt öffentlich machen. Wenn Ihr Projekt geschützt ist, sollten Sie sowohl Ihr GitHub-Repository als auch das Azure DevOps-Projekt als privat festlegen.
Später können die folgenden Ressourcen hilfreich sein, um zu bestimmen, welche Option für Ihr Projekt am besten geeignet ist:
- Private und öffentliche Projekte verwenden
- Ändern der Projektsichtbarkeit in öffentliche oder private
- Festlegen der Sichtbarkeit des Repositorys
Versetzen des Arbeitselements in die Ausführung
In diesem Teil weisen Sie sich in Azure Boards selbst eine Arbeitsaufgabe zu, die sich auf dieses Modul bezieht. Sie verschieben auch die Arbeitsaufgabe in den Zustand "Ausführen ". In der Praxis erstellt Ihr Team Arbeitsaufgaben am Anfang jedes Sprints oder einer Arbeitsiteration.
Indem Sie die Arbeit auf diese Weise zuweisen, erhalten Sie eine Checkliste, anhand derer Sie arbeiten können. Es gibt Ihrem Team Einblicke in das, worum Sie gerade arbeiten und wie viel Arbeit übrig bleibt. Außerdem hilft es dem Team, Beschränkungen der laufenden Arbeit (WIP) zu erzwingen, sodass das Team nicht zu viel Arbeit gleichzeitig aufnimmt.
Beachten Sie, dass sich das Team auf diese Schlüsselthemen für den aktuellen Sprint festgelegt hat.
Hinweis
In einer Azure DevOps-Organisation sind Arbeitselemente fortlaufend nummeriert. In Ihrem Projekt entspricht die Nummer für jede Arbeitsaufgabe möglicherweise nicht dem, was Sie hier sehen.
Hier verschieben Sie das fünfte Element, "Veröffentlichungsrhythmen verbessern", in die Spalte In Bearbeitung. Anschließend weisen Sie sich der Arbeitsaufgabe zu. Verbesserung des Veröffentlichungstempos bezieht sich auf die Wahl eines Bereitstellungsmusters, mit dem Sie Änderungen schnell an Ihre Benutzer freigeben können.
So richten Sie das Arbeitselement ein:
Wechseln Sie in Azure DevOps zu Boards, und wählen Sie dann " Boards" aus dem Menü aus.
Wählen Sie unten im Arbeitselement "Freigabetakt verbessern" den Abwärtspfeil aus. Weisen Sie sich die Arbeitsaufgabe dann selbst zu.
Verschieben Sie die Arbeitsaufgabe aus der Spalte "Aufgaben" in die Spalte " Ausführen ".
Am Ende dieses Moduls verschieben Sie die Karte nach Abschluss der Aufgabe in die Spalte "Fertig ".
Lokales Einrichten des Projekts
Hier laden Sie das Space Game-Projekt in Visual Studio Code, konfigurieren Git, klonen Sie Ihr Repository lokal, und legen Sie die Upstream-Remote so fest, dass Sie Startcode herunterladen können.
Hinweis
Wenn Sie bereits mit dem mslearn-tailspin-spacegame-web-deploy-Projekt lokal eingerichtet sind, können Sie zum nächsten Abschnitt wechseln.
Öffnen des integrierten Terminals
Visual Studio Code verfügt über ein integriertes Terminal. Hier bearbeiten Sie Dateien und arbeiten über die Befehlszeile.
Starten Sie Visual Studio Code.
Wählen Sie im Menü "Ansicht " die Option "Terminal" aus.
Wählen Sie in der Dropdownliste Git Bash aus. Wenn Sie mit einer anderen Unix-Shell vertraut sind, die Sie verwenden möchten, wählen Sie stattdessen diese Shell aus.
Im Terminalfenster können Sie eine beliebige Shell auswählen, die auf Ihrem System installiert ist. Sie können z. B. Git Bash oder PowerShell oder eine andere Shell auswählen.
Hier verwenden Sie Git Bash, Teil von Git für Windows, was die Ausführung von Git-Befehlen erleichtert.
Hinweis
Wenn Git Bash unter Windows nicht als Option aufgeführt ist, stellen Sie sicher, dass Sie Git installiert haben, und starten Sie Visual Studio Code dann neu.
Führen Sie den
cd
Befehl aus, um zum Verzeichnis zu wechseln, in dem Sie arbeiten möchten. Wählen Sie bei Bedarf Ihr Startverzeichnis (~
) oder ein anderes Verzeichnis aus.cd ~
Konfigurieren von Git
Wenn Sie mit Git und GitHub noch nicht vertraut sind, führen Sie zunächst einige Befehle aus, um Ihre Identität mit Git zu verknüpfen und sich mit GitHub zu authentifizieren. Weitere Informationen finden Sie unter Einrichten von Git.
Sie müssen mindestens die folgenden Schritte ausführen. Führen Sie die Befehle über das integrierte Terminal aus.
- Legen Sie Ihren Benutzernamen fest.
- Legen Sie Ihre Commit-E-Mail-Adresse fest.
- Speichern Sie Ihr GitHub-Kennwort zwischen.
Hinweis
Wenn Sie bereits zweistufige Authentifizierung mit GitHub verwenden, erstellen Sie ein persönliches Zugriffstoken. Wenn Sie dazu aufgefordert werden, verwenden Sie Ihr Token anstelle Ihres Kennworts.
Behandeln Sie das Zugriffstoken wie ein Kennwort. Bewahren Sie es an einem sicheren Ort auf.
Einrichten Ihres Projekts in Visual Studio Code
Im Lernpfad "Erstellen von Anwendungen mit Azure DevOps haben Sie ein Git-Repository geforkt und dann geklont. Das Repository enthält den Quellcode für die Space Game-Website . Ihr Fork wurde mit Ihren Projekten in Azure DevOps verbunden, damit der Build ausgeführt wird, wenn Sie Änderungen nach GitHub pushen.
Von Bedeutung
In diesem Lernpfad wechseln wir zu einem anderen Git-Repository, mslearn-tailspin-spacegame-web-deploy. Wenn Sie die Vorlage zum Einrichten Ihres Azure DevOps-Projekts ausgeführt haben, hat der Prozess das Repository automatisch für Sie geforkt.
In diesem Teil klonen Sie Ihren Fork lokal, sodass Sie Ihre Pipelinekonfiguration ändern und weiterentwickeln können.
Klonen Sie Ihren Fork lokal.
Sie verfügen jetzt über eine Kopie des Space Game-Webprojekts in Ihrem GitHub-Konto. Jetzt laden Sie eine Kopie auf Ihren Computer herunter, oder klonen sie, damit Sie damit arbeiten können.
Ein Klon ist genau wie ein Fork eine Kopie eines Repositorys. Wenn Sie ein Repository klonen, können Sie Änderungen vornehmen, überprüfen, ob sie wie erwartet funktionieren, und dann diese Änderungen auf GitHub hochladen. Sie können Ihre lokale Kopie auch mit Änderungen synchronisieren, die andere authentifizierte Benutzer an der GitHub-Kopie Ihres Repositorys vorgenommen haben.
So klonen Sie das Space Game-Webprojekt auf Ihren Computer:
Wechseln Sie zu Ihrer Abzweigung des Space Game-Webprojekts (mslearn-tailspin-spacegame-web-deploy) auf GitHub.
Wählen Sie "Code" aus. Wählen Sie dann auf der Registerkarte HTTPS die Schaltfläche neben der URL aus, die angezeigt wird, um die URL in die Zwischenablage zu kopieren.
Rufen Sie in Visual Studio Code das Terminalfenster auf.
Wechseln Sie im Terminal zu dem Verzeichnis, in dem Sie arbeiten möchten. Wählen Sie bei Bedarf Ihr Startverzeichnis (
~
) oder ein anderes Verzeichnis aus.cd ~
Führen Sie den Befehl
git clone
aus. Ersetzen Sie die hier angezeigte URL durch den Inhalt Ihrer Zwischenablage:git clone https://github.com/your-name/mslearn-tailspin-spacegame-web-deploy.git
Wechseln Sie zum Verzeichnis
mslearn-tailspin-spacegame-web-deploy
. Dies ist das Basisverzeichnis Ihres Repositorys.cd mslearn-tailspin-spacegame-web-deploy
Einrichten des Remoterepositorys für den Upstream
Ein Remote-Repository ist ein Git-Repository, in dem Teammitglieder zusammenarbeiten (z. B. ein Repository auf GitHub). Hier listen Sie Ihre Remoterepositorys auf und fügen ein Remoterepository hinzu, das auf die Kopie des Repositorys von Microsoft verweist, damit Sie den neuesten Beispielcode erhalten.
Führen Sie den Befehl
git remote
aus, um Ihre Remoterepositorys aufzulisten:git remote -v
Wie Sie sehen, umfassen Ihre Zugriffsmöglichkeiten auf Ihr Repository sowohl das Fetchen (Herunterladen) als auch das Pushen (Hochladen):
origin https://github.com/username/mslearn-tailspin-spacegame-web-deploy.git (fetch) origin https://github.com/username/mslearn-tailspin-spacegame-web-deploy.git (push)
Origin gibt Ihr Repository auf GitHub an. Wenn Sie Code aus einem anderen Repository forken, wird die ursprüngliche Remote (von der Sie geforkt haben) häufig upstream genannt.
Führen Sie diesen
git remote add
Befehl aus, um ein Remote namens "upstream" zu erstellen, das auf das Microsoft-Repository verweist.git remote add upstream https://github.com/MicrosoftDocs/mslearn-tailspin-spacegame-web-deploy.git
Führen Sie den Vorgang
git remote
erneut aus, um die Änderungen anzuzeigen:git remote -v
Sie sehen, dass Sie weiterhin sowohl Zugriff auf Abruf (Download) als auch Pushzugriff (Upload) auf Ihr Repository haben. Sie haben jetzt auch Zugriff auf das Microsoft-Repository:
origin https://github.com/username/mslearn-tailspin-spacegame-web-deploy.git (fetch) origin https://github.com/username/mslearn-tailspin-spacegame-web-deploy.git (push) upstream https://github.com/MicrosoftDocs/mslearn-tailspin-spacegame-web-deploy.git (fetch)
Öffnen des Projekts im Datei-Explorer
In Visual Studio Code verweist Ihr Terminalfenster auf das Stammverzeichnis des Space Game-Webprojekts. Um die Struktur des Projekts anzuzeigen und mit Dateien zu arbeiten, öffnen Sie nun im Datei-Explorer das Projekt.
Die einfachste Möglichkeit zum Öffnen des Projekts besteht darin, Visual Studio Code im aktuellen Verzeichnis erneut zu öffnen. Führen Sie dazu im integrierten Terminal den folgenden Befehl aus:
code -r .
Das Verzeichnis und die Dateistruktur werden im Datei-Explorer angezeigt.
Öffnen Sie das integrierte Terminal erneut. Das Terminal leitet Sie zum Stammverzeichnis Ihres Webprojekts weiter.
Wenn der code
-Befehl fehlschlägt, müssen Sie Ihrem Systempfad (PATH) Visual Studio Code hinzufügen. Gehen Sie folgendermaßen vor:
- Wählen Sie in Visual Studio Code F1 aus, oder wählen Sie"Befehlspalette>" aus, um auf die Befehlspalette zuzugreifen.
- Geben Sie in der Befehlspalette den Shellbefehl ein: Befehl 'Code' in PATH installieren.
- Wiederholen Sie den vorherigen Vorgang, um das Projekt im Datei-Explorer zu öffnen.
Sie sind jetzt für die Arbeit mit dem Quellcode für Space Game und Ihrer Azure Pipelines-Konfiguration aus Ihrer lokalen Entwicklungsumgebung eingerichtet.
Erstellen der Azure App Service-Umgebungen
Hier erstellen Sie die Umgebungen, die die Pipelinephasen definieren. Sie erstellen eine App Service-Instanz, die jeder Phase entspricht: Dev, Test und Staging.
In früheren Modulen haben Sie die Azure CLI zum Erstellen Ihrer App Service-Instanzen verwendet. Hier führen Sie die gleichen Schritte aus.
Von Bedeutung
Sie benötigen Ihr eigenes Azure-Abonnement, um die Übungen in diesem Modul abzuschließen.
Aufrufen von Cloud Shell über das Azure-Portal
- Wechseln Sie zum Azure-Portal , und melden Sie sich an.
- Wählen Sie im Menü Cloud Shell aus. Wählen Sie Bash aus, wenn Sie dazu aufgefordert werden.
Auswählen einer Azure-Region
Hier geben Sie die Standardregion oder den geografischen Standort an, an dem Ihre Azure-Ressourcen erstellt werden.
Führen Sie in Cloud Shell den folgenden
az account list-locations
Befehl aus, um die Regionen auflisten, die in Ihrem Azure-Abonnement verfügbar sind.az account list-locations \ --query "[].{Name: name, DisplayName: displayName}" \ --output table
Wählen Sie in der Spalte "Name" in der Ausgabe eine Region aus, die Ihnen nahe liegt. Wählen Sie z. B. "Ostasien " oder "Westus2" aus.
Führen Sie
az configure
aus, um Ihre Standardregion festzulegen. Ersetzen Sie <REGION> durch den Namen der region, die Sie ausgewählt haben.az configure --defaults location=<REGION>
In diesem Beispiel wird "westus2" als Standardbereich festgelegt:
az configure --defaults location=westus2
Erstellen der App Service-Instanzen
Hier erstellen Sie App Service-Instanzen für die drei Phasen, für die Sie bereitstellen werden: Dev, Test und Staging. Sie fügen später in diesem Modul einen Bereitstellungsslot zu Staging hinzu.
Hinweis
Für Lernzwecke verwenden Sie hier die Standardnetzwerkeinstellungen. Diese Einstellungen machen Ihre Website über das Internet zugänglich. In der Praxis könnten Sie ein virtuelles Azure-Netzwerk konfigurieren, das Ihre Website in einem Netzwerk platziert, das nicht vom Internet aus erreichbar ist, aber nur von Ihrem Team zugegriffen werden kann. Wenn Sie bereit sind, können Sie Ihr Netzwerk später neu konfigurieren, um die Website ihren Benutzern zur Verfügung zu stellen.
Generieren Sie in Cloud Shell eine Zufallszahl, die den Domänennamen Ihrer Web-App eindeutig macht:
webappsuffix=$RANDOM
Führen Sie den folgenden
az group create
Befehl aus, um eine Ressourcengruppe mit dem Namen "tailspin-space-game-rg" zu erstellen.az group create --name tailspin-space-game-rg
Führen Sie die folgenden Befehle aus, um zwei App Service-Pläne zu erstellen.
az appservice plan create \ --name tailspin-space-game-test-asp \ --resource-group tailspin-space-game-rg \ --sku B1 \ --is-linux az appservice plan create \ --name tailspin-space-game-prod-asp \ --resource-group tailspin-space-game-rg \ --sku P1V2 \ --is-linux
Von Bedeutung
Wenn die B1-SKU nicht als Teil Ihres Azure-Abonnements verfügbar ist, wählen Sie einen anderen Plan aus, z. B. S1 (Standard).
Denken Sie daran, dass ein App Service-Plan die CPU-, Arbeitsspeicher- und Speicherressourcen definiert, die für die Ausführung Ihrer Web-App bereitgestellt werden.
Der erste Befehl gibt den B1-Plan an. Dieser Plan wird auf der Ebene "Einfach " ausgeführt. Die App Service-Umgebungen verwenden diesen Plan für die Entwicklungs- und Testphasen . Der B1 Basic-Plan richtet sich an Apps mit geringem Datenverkehr, z. B. in einer Entwicklungs- oder Testumgebung.
Der zweite Befehl gibt den P1V2-Plan an, der auf der Premium-Stufe ausgeführt wird. Dieser Plan wird für Staging verwendet. Der Premium P1V2-Plan richtet sich an Produktionsworkloads. Sie wird auf dedizierten Instanzen virtueller Computer ausgeführt.
Die Stufe " Standardplan " bietet keine zusätzlichen Bereitstellungsplätze. Der Plan Premium hingegen schon. Deshalb benötigen Sie den Premium-Plan für Ihre Staging-Umgebung .
Führen Sie die folgenden
az webapp create
Befehle aus, um die drei App Service-Instanzen zu erstellen, eine für jede der Entwicklungs-, Test- und Stagingumgebungen.az webapp create \ --name tailspin-space-game-web-dev-$webappsuffix \ --resource-group tailspin-space-game-rg \ --plan tailspin-space-game-test-asp \ --runtime "DOTNET|6.0" az webapp create \ --name tailspin-space-game-web-test-$webappsuffix \ --resource-group tailspin-space-game-rg \ --plan tailspin-space-game-test-asp \ --runtime "DOTNET|6.0" az webapp create \ --name tailspin-space-game-web-staging-$webappsuffix \ --resource-group tailspin-space-game-rg \ --plan tailspin-space-game-prod-asp \ --runtime "DOTNET|6.0"
Beachten Sie, dass Sie hier den gleichen App Service-Plan, B1 Basic, auf die App Service-Instanzen für Dev und Test anwenden. Sie wenden den App Service-Plan Premium P1V2 auf die App Service-Instanz für Staging an.
Führen Sie den folgenden
az webapp list
Befehl aus, um den Hostnamen und den Status jeder App Service-Instanz auflisten zu können.az webapp list \ --resource-group tailspin-space-game-rg \ --query "[].{hostName: defaultHostName, state: state}" \ --output table
Beachten Sie den Hostnamen für jeden ausgeführten Dienst. Sie benötigen diese Hostnamen später, wenn Sie Ihre Arbeit überprüfen. Hier ist ein Beispiel für die Hostnamen:
HostName State ------------------------------------------------------- ------- tailspin-space-game-web-dev-21017.azurewebsites.net Running tailspin-space-game-web-test-21017.azurewebsites.net Running tailspin-space-game-web-staging-21017.azurewebsites.net Running
Wechseln Sie als optionaler Schritt zu einem oder mehreren Namen. Vergewissern Sie sich, dass sie ausgeführt werden und dass die Standardstartseite angezeigt wird.
Diese Seite wird in jeder Umgebung angezeigt:
Von Bedeutung
Die Seite "Azure DevOps-Umgebung bereinigen" in diesem Modul enthält wichtige Bereinigungsschritte. Durch das Bereinigen können Sie sicherstellen, dass Azure-Ressourcen nach Abschluss dieses Moduls nicht in Rechnung gestellt werden. Achten Sie darauf, dass Sie die Bereinigungsschritte auch ausführen, wenn Sie dieses Modul nicht abschließen.
Erstellen von Pipelinevariablen in Azure-Pipelines
In Erstellen Sie eine Pipeline mit mehreren Stufen mithilfe von Azure Pipelines haben Sie eine Variable für jede der App Service-Instanzen hinzugefügt, die den Dev-, Test- und Staging-Stufen in Ihrer Pipeline entsprechen. Hier tun Sie dasselbe.
Jede Phase in Ihrer Pipelinekonfiguration verwendet diese Variablen, um zu identifizieren, für welche App Service-Instanz bereitgestellt werden soll.
So fügen Sie die Variablen hinzu:
Wechseln Sie in Azure DevOps zu Ihrem "Space Game - Web - Deployment Patterns"-Projekt.
Wählen Sie unter "Pipelines" die Option "Bibliothek" aus.
Wählen Sie + Variable group.
Geben Sie unter "Eigenschaften" für den Variablengruppennamen "Release" ein.
Wählen Sie unter "Variablen" +Hinzufügen aus.
Geben Sie für den Namen der Variablen WebAppNameDev ein. Geben Sie als Wert den Namen der App Service-Instanz ein, die Ihrer Dev-Umgebung entspricht, z. B. tailspin-space-game-web-dev-1234.
Wiederholen Sie die Schritte 5 und 6 zweimal, um Variablen für Ihre Test - und Stagingumgebungen zu erstellen, wie in dieser Tabelle gezeigt:
Variablenname Beispielwert WebAppNameTest tailspin-space-game-web-test-1234 WebAppNameStaging tailspin-space-game-web-staging-1234 Achten Sie darauf, jeden Beispielwert durch die App Service-Instanz zu ersetzen, die Ihrer Umgebung entspricht.
Von Bedeutung
Legen Sie den Namen der App Service-Instanz und nicht den Hostnamen fest. In diesem Beispiel würden Sie tailspin-space-game-web-dev-1234 eingeben und nicht tailspin-space-game-web-dev-1234.azurewebsites.net.
Wählen Sie oben auf der Seite "Speichern" aus, um die Variable in der Pipeline zu speichern.
Ihre Variablengruppe ähnelt dieser.
Erstellen der Entwicklungs-, Test- und Stagingumgebungen
In früheren Modulen haben Sie Umgebungen für Entwicklungs-, Test- und Stagingumgebungen erstellt. Hier wiederholen Sie den Vorgang.
So erstellen Sie die Entwicklungs-, Test- und Stagingumgebungen:
Wählen Sie in Azure-Pipelines "Umgebungen" aus.
So erstellen Sie die Entwicklungsumgebung :
- Wählen Sie "Umgebung erstellen" aus.
- Geben Sie unter "Name" "Dev" ein.
- Behalten Sie die verbleibenden Felder bei ihren Standardwerten bei.
- Wählen Sie "Erstellen" aus.
So erstellen Sie die Testumgebung :
- Kehren Sie zur Seite "Umgebungen" zurück.
- Wählen Sie "Neue Umgebung" aus.
- Geben Sie unter Nametest ein.
- Wählen Sie "Erstellen" aus.
So erstellen Sie die Staging-Umgebung:
- Kehren Sie zur Seite "Umgebungen" zurück.
- Wählen Sie "Neue Umgebung" aus.
- Geben Sie unter NameStaging ein.
- Wählen Sie "Erstellen" aus.
Erstellen einer Dienstverbindung
Hier erstellen Sie eine Dienstverbindung, mit der Azure Pipelines auf Ihr Azure-Abonnement zugreifen können. Azure Pipelines verwendet diese Dienstverbindung, um die Website für App Service bereitzustellen. Sie haben eine ähnliche Dienstverbindung im vorherigen Modul erstellt.
Von Bedeutung
Stellen Sie sicher, dass Sie sowohl beim Azure-Portal als auch bei Azure DevOps unter demselben Microsoft-Konto angemeldet sind.
Wechseln Sie in Azure DevOps zu Ihrem "Space Game - Web - Deployment Patterns"-Projekt.
Wählen Sie in der unteren Ecke der Seite die Projekteinstellungen aus.
Wählen Sie unter "Pipelines" die Option "Dienstverbindungen" aus.
Wählen Sie "Neue Dienstverbindung" und dann "Azure Resource Manager" und dann "Weiter" aus.
Wählen Sie oben auf der Seite Dienstprinzipal (automatisch) aus. Wählen Sie dann "Weiter" aus.
Füllen Sie die folgenden Felder aus:
Feld Wert Bereichsebene Abonnement Abonnement Ihr Azure-Abonnement Ressourcengruppe tailspin-space-game-rg Name der Dienstverbindung Resource Manager – Tailspin – Space Game Während des Vorgangs werden Sie möglicherweise aufgefordert, sich bei Ihrem Microsoft-Konto anzumelden.
Achten Sie darauf, dass Allen Pipelines Zugriffsberechtigung gewähren ausgewählt ist.
Wählen Sie "Speichern" aus.
Azure DevOps führt eine Testverbindung aus, um zu überprüfen, ob sie eine Verbindung mit Ihrem Azure-Abonnement herstellen kann. Wenn Azure DevOps keine Verbindung herstellen kann, haben Sie die Möglichkeit, sich ein zweites Mal anzumelden.
Abrufen des Branchs aus GitHub
Hier rufen Sie den Branch blue-green
aus GitHub ab. Sie checken dann diesen Branch aus, d. h. Sie wechseln zu diesem Branch.
Dieser Zweig enthält das Space Game-Projekt , mit dem Sie in den vorherigen Modulen gearbeitet haben, und eine Azure Pipelines-Konfiguration, mit der Sie beginnen möchten.
Öffnen Sie in Visual Studio Code das integrierte Terminal.
Führen Sie die folgenden
git
Befehle aus, um eine Verzweigungblue-green
namens aus dem Microsoft-Repository abzurufen und zu dieser Verzweigung zu wechseln.git fetch upstream blue-green git checkout -B blue-green upstream/blue-green
Mit dem Format dieser Befehle können Sie Startcode aus dem Microsoft GitHub-Repository, bekannt als
upstream
, abrufen. In Kürze werden Sie diesen Branch per Push in Ihr GitHub-Repository (alsorigin
bezeichnet) übertragen.Öffnen Sie als optionalen Schritt azure-pipelines.yml aus Visual Studio Code. Machen Sie sich mit der Anfangskonfiguration vertraut.
Die Konfiguration weist Ähnlichkeit mit den Konfigurationen auf, die Sie in den vorherigen Modulen dieses Lernpfads erstellt haben. Es erstellt nur die Releasekonfiguration der Anwendung. Aus Platzgründen werden die Auslöser, manuelle Genehmigungen und Tests, die Sie in vorherigen Modulen eingerichtet haben, weggelassen.
Für Lernzwecke fördert diese Konfiguration Änderungen von jeder Verzweigung zu Dev, Test und Staging. Ein robusterer Ansatz könnte Änderungen nur von einem Releasebranch oder
main
höher stufen. Sie haben diesen robusten Ansatz in der Multistage-Pipeline erstellen mithilfe des Azure Pipelines-Moduls verwendet.
Ausführen der Pipeline und Anzeigen der bereitgestellten Website
Hier übertragen Sie die anfängliche Konfiguration auf GitHub, damit Sie mit dem Team auf dem neuesten Stand sind. Später fügen Sie der Staging-Umgebung einen Slot hinzu, damit Sie ein Blue-Green-Deployment implementieren können.
Öffnen Sie in Visual Studio Code das integrierte Terminal.
Führen Sie den folgenden
git commit
Befehl aus, um ihrem Commit-Verlauf einen leeren Eintrag hinzuzufügen.git commit --allow-empty -m "Trigger the pipeline"
Dieser Schritt dient zu Lernzwecken. Es ist nicht typisch. Wir stellen Startcode bereit, den Sie jetzt nicht ändern müssen. Mit
--allow-empty
der Kennzeichnung wird sichergestellt, dass der nächste Schritt die Verzweigung erfolgreich auf GitHub verschiebt und Azure Pipelines zum Ausführen auslöst.Wenn Sie diesen Schritt ausgelassen haben, würde der
git push
Befehl, den Sie im nächsten Schritt ausführen, keine Aktion ausführen. Er würde also nicht die Ausführung von Azure Pipelines auslösen.Führen Sie den folgenden
git push
Befehl aus, um die Verzweigung in Ihr GitHub-Repository hochzuladen.git push origin blue-green
Wechseln Sie in Azure Pipelines zum Build. Überwachen Sie dann die Ausführung des Builds. Wenn Sie dazu aufgefordert werden, wählen Sie "Zulassen" , um Bereitstellungsberechtigungen für die verschiedenen Phasen zu erteilen.
Navigieren Sie nach Abschluss der Pipelineausführung zu der Zusammenfassungsseite, um den Pipelinestatus anzuzeigen.
Navigieren Sie zu der URL, die jeder Phase entspricht. Ihre Web-App sollte für jede Umgebung bereitgestellt werden.