Bereitstellen auf einem Windows Virtuellen Computer

Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018

Erfahren Sie, wie Sie Continuous Deployment Ihrer ASP.NET- oder Node.js-App auf einem IIS-Webserver einrichten, der auf Windows mithilfe von Azure Pipelines. Sie können die Schritte in dieser Schnellstartanleitung ausführen, solange Ihre Continuous Integration-Pipeline ein Webbereitstellungspaket veröffentlicht.

Nachdem Sie einen Commit ausgeführt und eine Codeänderung mit pushen, wird sie automatisch erstellt und dann bereitgestellt. Die Ergebnisse werden automatisch auf Ihrer Website angezeigt.

Definieren der CI-Buildpipeline

Sie benötigen eine Ci-Buildpipeline (Continuous Integration), die Ihr Webbereitstellungspaket veröffentlicht. Informationen zum Einrichten einer CI-Buildpipeline finden Sie unter:

Voraussetzungen

IIS-Konfiguration

Die Konfiguration variiert abhängig vom Typ der App, die Sie bereitstellen.

ASP.NET-App

Öffnen Sie auf Ihrem virtuellen Computer eine Administrator: Windows PowerShell-Konsole. Installieren von IIS:

# Install IIS
Install-WindowsFeature Web-Server,Web-Asp-Net45,NET-Framework-Features

ASP.NET Core-App

Das Ausführen einer ASP.NET Core-App auf Windows erfordert einige Abhängigkeiten. Weitere Anweisungen finden ASP.NET Core hosten Windows mit IIS.

Node.js-App

Befolgen Sie die Anweisungen in diesem Thema , um IISnode auf IIS-Servern zu installieren und zu konfigurieren.

Erstellen einer Bereitstellungsgruppe

Bereitstellungsgruppen in Azure Pipelines erleichtern die Organisation der Server, die Sie zum Hosten Ihrer App verwenden möchten. Eine Bereitstellungsgruppe ist eine Sammlung von Computern mit einem Azure Pipelines agent auf jedem dieser Computer. Jeder Computer interagiert mit Azure Pipelines, um die Bereitstellung Ihrer App zu koordinieren.

  1. Öffnen Sie das Azure Pipelines-Webportal, und wählen Sie Bereitstellungsgruppen aus.

  2. Klicken Sie auf Bereitstellungsgruppe hinzufügen (oder auf Neu , wenn bereits Bereitstellungsgruppen vorhanden sind).

  3. Geben Sie einen Namen für die Gruppe ein, z. B. myIIS, und klicken Sie dann auf Erstellen.

  4. Stellen Sie sicher, dass im Abschnitt Computer registrieren Windows und dass Auch persönliches Zugriffstoken im Skript für die Authentifizierung verwenden ausgewählt ist. Klicken Sie auf Skript in Zwischenablage kopieren.

    Das Skript, das Sie in die Zwischenablage kopiert haben, wird einen Agent auf den virtuellen Computer herunterladen und konfigurieren, damit er neue Webbereitstellungspakete empfangen und auf IIS anwenden kann.

  5. Fügen Sie auf Ihrem virtuellen Computer in einer PowerShell-Administratorkonsole das Skript ein, und führen Sie es aus.

  6. Wenn Sie aufgefordert werden, Tags für den Agent zu konfigurieren, drücken Sie die EINGABETASTE (Sie benötigen keine Tags).

  7. Wenn Sie zur Eingabe des Benutzerkontos aufgefordert werden, drücken Sie die EINGABETASTE , um die Standardwerte zu übernehmen.

    Das Konto, unter dem der Agent ausgeführt wird, benötigt Manage-Berechtigungen für C:\Windows\system32\inetsrv\ directory. Weitere Informationen zum Verwalten von Berechtigungen finden Sie unter Sicherheitsgruppen, Dienstkonten und Berechtigungen in Azure DevOps. Das Hinzufügen von Benutzern ohne Administratorrechte zu diesem Verzeichnis wird nicht empfohlen. Wenn Sie über eine benutzerdefinierte Benutzeridentität für die Anwendungspools verfügen, benötigt die Identität außerdem die Berechtigung zum Lesen der Kryptoschlüssel. Lokalen Dienstkonten und Benutzerkonten muss dafür Lesezugriff erteilt werden. Weitere Informationen finden Sie unter Keyset does not exist error message (Keyset ist nicht vorhanden).

  8. Wenn das Skript abgeschlossen ist, wird die Meldung Dienst vstsagent.account.computername erfolgreich gestartet angezeigt.

  9. Öffnen Sie auf der Seite Bereitstellungsgruppen in Azure Pipelines die Bereitstellungsgruppe myIIS. Überprüfen Sie auf der Registerkarte Ziele, ob Ihr virtueller Computer aufgeführt ist.

Definieren Ihrer CD-Releasepipeline

Ihre CD-Releasepipeline nimmt die von Ihrem CI-Build veröffentlichten Artefakte auf und stellt sie dann auf Ihren IIS-Servern zur Verfügung.

  1. Installieren Sie die IIS-Web-App-Bereitstellung mithilfe der WinRM-Erweiterung aus dem Marketplace, falls Sie dies noch nicht getan haben. Diese Erweiterung enthält die aufgaben, die für dieses Beispiel erforderlich sind.

  2. Führen Sie eines der folgenden Verfahren aus:

    • Wenn Sie gerade einen CI-Build abgeschlossen haben, wählen Sie auf der Registerkarte Zusammenfassung des Build die Option Release aus. Dadurch wird eine neue Releasepipeline erstellt, die automatisch mit der Buildpipeline verknüpft wird.

    • Öffnen Sie die RegisterkarteReleases Azure Pipelines, öffnen + Sie das Dropdown in der Liste der Releasepipelines, und wählen Sie Releasepipeline erstellen aus.

  3. Wählen Sie die Vorlage IIS-Websitebereitstellung und dann Übernehmen aus.

  4. Wenn Sie Ihre neue Releasepipeline aus einer Buildzusammenfassung erstellt haben, überprüfen Sie, ob die Buildpipeline und das Artefakt im Abschnitt Artifacts auf der Registerkarte Pipeline angezeigt werden. Wenn Sie auf der Registerkarte Releases eine neue Releasepipeline erstellt haben, klicken Sie auf den Link + Hinzufügen, und wählen Sie Ihr Buildartefakt aus.

  5. Wählen Sie im Abschnitt "Artifacts" das Symbol Continuous Deployment aus, überprüfen Sie, ob der Continuous Deployment-Trigger aktiviert ist, und fügen Sie einen Filter hinzu, um den Hauptzweig ein beispielen zu lassen.

  6. Öffnen Sie die Registerkarte Aufgaben , und wählen Sie den IiS-Bereitstellungsauftrag aus. Wählen Sie unter Bereitstellungsgruppe die Bereitstellungsgruppe aus, die Sie zuvor erstellt haben (z. B. myIIS).

  7. Speichern Sie die Releasepipeline.

Erstellen eines Release zum Bereitstellen Ihrer App

Sie können nun ein Release erstellen, d.&a0;b. die Releasepipeline mit den Artefakten ausführen, die von einem bestimmten Build erstellt werden. Das Ergebnis ist die Bereitstellung des Builds:

  1. Wählen Sie + Release und dann Release erstellen aus.

  2. Überprüfen Sie im Bereich Neues Release erstellen, ob die von Ihnen gewünschte Artefaktversion ausgewählt ist, und wählen Sie dann Erstellen aus.

  3. Klicken Sie in der Meldung in der Informationsleiste auf den Releaselink. Beispiel: „Release Release-1 wurde erstellt.“

  4. Wählen Sie in der Pipelineansicht den Statuslink in den Phasen der Pipeline aus, um die Protokolle und die Agentausgabe anzuzeigen.

  5. Navigieren Sie nach Abschluss des Release zu Ihrer App, und überprüfen Sie deren Inhalt.

Nächste Schritte