Continuous Deployment in Azure mit Visual Studio und Git mit ASP.NET CoreContinuous deployment to Azure with Visual Studio and Git with ASP.NET Core

Von Erik ReitanBy Erik Reitan

Wichtig

ASP.NET Core-Vorschauversion mit Azure App ServiceASP.NET Core preview releases with Azure App Service

ASP.NET Core-Vorschauversionen werden nicht standardmäßig in Azure App Service bereitgestellt.ASP.NET Core preview releases aren't deployed to Azure App Service by default. Weitere Informationen zum Hosten einer App, die eine ASP.NET Core-Vorschauversion verwendet, finden Sie unter Deploy ASP.NET Core preview release to Azure App Service (Bereitstellen der ASP.NET Core-Vorschauversion in Azure App Service).To host an app that uses an ASP.NET Core preview release, see Deploy ASP.NET Core preview release to Azure App Service.

Dieses Tutorial zeigt, wie mit Visual Studio eine ASP.NET Core-Web-App erstellt und aus Visual Studio mithilfe von Continuous Deployment in Azure App Service bereitgestellt wird.This tutorial shows how to create an ASP.NET Core web app using Visual Studio and deploy it from Visual Studio to Azure App Service using continuous deployment.

Siehe auch Erstellen einer ersten Pipeline mit Azure Pipelines. Diese Anleitung zeigt, wie Sie einen CD-Workflow (Continuous Delivery) für Azure App Service mit Azure DevOps Services konfigurieren.See also Create your first pipeline with Azure Pipelines, which shows how to configure a continuous delivery (CD) workflow for Azure App Service using Azure DevOps Services. Azure Pipelines (ein Azure DevOps Services-Dienst) vereinfacht das Einrichten einer robusten Bereitstellungspipeline zur Veröffentlichung von Updates für Apps, die in Azure App Service gehostet werden.Azure Pipelines (an Azure DevOps Services service) simplifies setting up a robust deployment pipeline to publish updates for apps hosted in Azure App Service. Die Pipeline kann im Azure-Portal für die folgenden Aufgaben konfiguriert werden: Erstellen von Builds, Ausführen von Tests, Bereitstellen in einem Stagingslot und anschließendes Bereitstellen in der Produktion.The pipeline can be configured from the Azure portal to build, run tests, deploy to a staging slot, and then deploy to production.

Hinweis

Für dieses Tutorial ist ein Microsoft Azure-Konto erforderlich.To complete this tutorial, a Microsoft Azure account is required. Zum Abrufen eines Kontos können Sie die Leistungen für MSDN-Abonnenten aktivieren oder sich für eine kostenlose Testversion registrieren.To obtain an account, activate MSDN subscriber benefits or sign up for a free trial.

Erforderliche KomponentenPrerequisites

Dieses Tutorial setzt voraus, dass folgende Software installiert ist:This tutorial assumes the following software is installed:

Erstellen einer ASP.NET Core-Web-AppCreate an ASP.NET Core web app

  1. Starten Sie Visual Studio.Start Visual Studio.

  2. Wählen Sie im Menü Datei den Befehl Neu > Projekt aus.From the File menu, select New > Project.

  3. Wählen Sie die Projektvorlage ASP.NET Core-Webanwendung aus.Select the ASP.NET Core Web Application project template. Sie wird unter Installierte > Vorlagen > Visual C# > .NET Core angezeigt.It appears under Installed > Templates > Visual C# > .NET Core. Benennen Sie das Projekt mit SampleWebAppDemo.Name the project SampleWebAppDemo. Wählen Sie die Option Neues Git-Repository erstellen aus, und klicken Sie auf OK.Select the Create new Git repository option and click OK.

    Dialogfeld "Neues Projekt"

  4. Wählen Sie im Dialogfeld Neues ASP.NET Core-Projekt die ASP.NET Core-Vorlage Leer aus, und klicken Sie dann auf OK.In the New ASP.NET Core Project dialog, select the ASP.NET Core Empty template, then click OK.

    Dialogfeld „Neues ASP.NET Core-Projekt“

Hinweis

Das neueste Release von .NET Core ist 2.0.The most recent release of .NET Core is 2.0.

Lokales Ausführen der Web-AppRunning the web app locally

  1. Sobald Visual Studio das Erstellen der App abgeschlossen hat, führen Sie die App durch Auswählen von Debuggen > Debuggen starten aus.Once Visual Studio finishes creating the app, run the app by selecting Debug > Start Debugging. Drücken Sie alternativ die Taste F5.As an alternative, press F5.

    Das Initialisieren von Visual Studio und der neuen App dauert möglicherweise einen Moment.It may take time to initialize Visual Studio and the new app. Nach Abschluss der Initialisierung wird im Browser die ausgeführte App angezeigt.Once it's complete, the browser shows the running app.

    Browserfenster mit der ausgeführten Anwendung, in der „Hello World!“ angezeigt wird

  2. Schließen Sie nach der Überprüfung der ausgeführten Web-App den Browser, und klicken Sie in der Symbolleiste von Visual Studio auf das Symbol „Debuggen beenden“, um die App zu beenden.After reviewing the running Web app, close the browser and select the "Stop Debugging" icon in the toolbar of Visual Studio to stop the app.

Erstellen einer Web-App im Azure-PortalCreate a web app in the Azure Portal

Mit den folgenden Schritten wird eine Web-App im Azure-Portal erstellt:The following steps create a web app in the Azure Portal:

  1. Melden Sie sich beim Azure-Portal an.Log in to the Azure Portal.

  2. Klicken Sie links oben auf der Portalschnittstelle auf die Option NEU.Select NEW at the top left of the portal interface.

  3. Wählen Sie Web + Mobil > Web-App aus.Select Web + Mobile > Web App.

    Microsoft Azure-Portal: Schaltfläche „Neu“: „Web und mobil“ unter „Marketplace“: Schaltfläche „Web App“ unter „Ausgewählte Apps“

  4. Geben Sie auf dem Blatt Web-App für App Service-Name einen eindeutigen Wert ein.In the Web App blade, enter a unique value for the App Service Name.

    Blatt „Web-App“

    Hinweis

    Der Name unter App Service-Name muss eindeutig sein.The App Service Name name must be unique. Wenn der Name angegeben ist, erzwingt das Portal diese Regel.The portal enforces this rule when the name is provided. Wenn ein anderer Wert eingegeben wird, müssen Sie diesen Wert bei jedem Vorkommen von SampleWebAppDemo in diesem Tutorial ersetzen.If providing a different value, substitute that value for each occurrence of SampleWebAppDemo in this tutorial.

    Wählen Sie außerdem auf dem Blatt Web-App einen vorhandenen App Service-Plan/Standort aus, oder erstellen Sie einen neuen.Also in the Web App blade, select an existing App Service Plan/Location or create a new one. Wenn Sie einen neuen Plan erstellen, wählen Sie den Tarif, den Standort und andere Optionen aus.If creating a new plan, select the pricing tier, location, and other options. Weitere Informationen zu App Service-Plänen finden Sie unter Azure App Service-Pläne – Detaillierte Übersicht.For more information on App Service plans, see Azure App Service plans in-depth overview.

  5. Wählen Sie Erstellen aus.Select Create. Azure stellt die Web-App bereit und startet sie.Azure will provision and start the web app.

    Azure-Portal: SampleWebAppDemo01, Blatt „Zusammenfassung“

Aktivieren der Git-Veröffentlichung für die neue Web-AppEnable Git publishing for the new web app

Bei Git handelt es sich um ein verteiltes Versionskontrollsystem, mit dem Sie eine Azure App Service-Web-App bereitstellen können.Git is a distributed version control system that can be used to deploy an Azure App Service web app. Web-App-Code wird in einem lokalen Git-Repository gespeichert, und der Code wird durch Übertragung in ein Remoterepository in Azure bereitgestellt.Web app code is stored in a local Git repository, and the code is deployed to Azure by pushing to a remote repository.

  1. Melden Sie sich beim Azure-Portal an.Log into the Azure Portal.

  2. Klicken Sie auf App-Dienste, um eine Liste der App-Dienste anzuzeigen, die Ihrem Azure-Abonnement zugeordnet sind.Select App Services to view a list of the app services associated with the Azure subscription.

  3. Wählen Sie die Web-App aus, die im vorherigen Abschnitt dieses Tutorials erstellt wurde.Select the web app created in the previous section of this tutorial.

  4. Klicken Sie auf dem Blatt Bereitstellung auf Bereitstellungsoptionen > Quelle auswählen > Lokales Git-Repository.In the Deployment blade, select Deployment options > Choose Source > Local Git Repository.

    Blatt "Einstellungen": Blatt „Bereitstellungsquelle“: Quellblatt auswählen

  5. Klicken Sie auf OK.Select OK.

  6. Wenn zuvor keine Anmeldeinformationen für die Bereitstellung zum Veröffentlichen einer Web-App oder anderen App Service-App festgelegt wurden, richten Sie diese nun ein:If deployment credentials for publishing a web app or other App Service app haven't previously been set up, set them up now:

    • Wählen Sie Einstellungen > Anmeldeinformationen für die Bereitstellung aus.Select Settings > Deployment credentials. Das Blatt Anmeldeinformationen für die Bereitstellung festlegen wird angezeigt.The Set deployment credentials blade is displayed.
    • Erstellen Sie einen Benutzernamen und ein Kennwort.Create a user name and password. Speichern Sie das Kennwort zur späteren Verwendung beim Einrichten von Git.Save the password for later use when setting up Git.
    • Klicken Sie auf Speichern.Select Save.
  7. Wählen Sie auf dem Blatt Web-App den Eintrag Einstellungen > Eigenschaften aus.In the Web App blade, select Settings > Properties. Die URL des Git-Remoterepositorys, in dem die Bereitstellung erfolgt, wird unter GIT-URL angezeigt.The URL of the remote Git repository to deploy to is shown under GIT URL.

  8. Kopieren Sie den Wert GIT-URL zur späteren Verwendung in diesem Tutorial.Copy the GIT URL value for later use in the tutorial.

    Azure-Portal: Blatt „Eigenschaften“ der Anwendung

Veröffentlichen der App in Azure App ServicePublish the web app to Azure App Service

In diesem Abschnitt erstellen Sie ein lokales Git-Repository mit Visual Studio und führen einen Pushvorgang aus diesem Repository in Azure aus, um die Web-App bereitzustellen.In this section, create a local Git repository using Visual Studio and push from that repository to Azure to deploy the web app. Folgende Schritte müssen ausgeführt werden:The steps involved include the following:

  • Fügen Sie die Einstellung des Remoterepositorys mithilfe des GIT-URL-Werts hinzu, damit das lokale Repository in Azure bereitgestellt werden kann.Add the remote repository setting using the GIT URL value, so the local repository can be deployed to Azure.
  • Führen Sie für die Projektänderungen einen Commit aus.Commit project changes.
  • Übertragen Sie die Projektänderungen mithilfe von Push aus Ihrem lokalen Repository in das Remoterepository in Azure.Push project changes from the local repository to the remote repository on Azure.
  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Projektmappe „SampleWebAppDemo“, und wählen Sie Commit ausführen aus.In Solution Explorer right-click Solution 'SampleWebAppDemo' and select Commit. Der Team Explorer wird angezeigt.The Team Explorer is displayed.

    Team Explorer-Registerkarte „Verbinden“

  2. Klicken Sie in Team Explorer auf Start (Startsymbol) > Einstellungen > Repositoryeinstellungen.In Team Explorer, select the Home (home icon) > Settings > Repository Settings.

  3. Klicken Sie in Repositoryeinstellungen im Abschnitt Remotes auf Hinzufügen.In the Remotes section of the Repository Settings, select Add. Das Dialogfeld Remote hinzufügen wird angezeigt.The Add Remote dialog box is displayed.

  4. Legen Sie den Namen der Remoteinstanz auf Azure SampleApp fest.Set the Name of the remote to Azure-SampleApp.

  5. Legen Sie den Wert für Fetch auf die Git-URL fest, die Sie zuvor in diesem Tutorial aus Azure kopiert haben.Set the value for Fetch to the Git URL that copied from Azure earlier in this tutorial. Beachten Sie, dass dies die URL ist, die mit .git endet.Note that this is the URL that ends with .git.

    Dialogfeld „Remote bearbeiten“

    Hinweis

    Geben Sie alternativ über das Befehlsfenster das Remoterepository an, indem Sie das Befehlsfenster öffnen, zum Projektverzeichnis wechseln und den Befehl eingeben.As an alternative, specify the remote repository from the Command Window by opening the Command Window, changing to the project directory, and entering the command. Beispiel:Example:

    git remote add Azure-SampleApp https://me@sampleapp.scm.azurewebsites.net:443/SampleApp.git

  6. Klicken Sie auf Start (Startsymbol) > Einstellungen > Globale Einstellungen.Select the Home (home icon) > Settings > Global Settings. Überprüfen Sie, ob der Name und die E-Mail-Adresse festgelegt wurden.Confirm that the name and email address are set. Wählen Sie ggf. Aktualisieren aus.Select Update if required.

  7. Klicken Sie auf Start > Änderungen, um zur Ansicht Änderungen zurückzukehren.Select Home > Changes to return to the Changes view.

  8. Geben Sie eine Commit-Nachricht ein, z.B. Anfänglicher Push Nr. 1, und klicken Sie auf Commit ausführen.Enter a commit message, such as Initial Push #1 and select Commit. Durch diese Aktion wird lokal ein Commit erstellt.This action creates a commit locally.

    Team Explorer-Registerkarte „Verbinden“

    Hinweis

    Führen Sie alternativ für Ihre Änderungen über das Befehlsfenster einen Commit aus, indem Sie das Befehlsfenster öffnen, zum Projektverzeichnis wechseln und die Git-Befehle eingeben.As an alternative, commit changes from the Command Window by opening the Command Window, changing to the project directory, and entering the git commands. Beispiel:Example:

    git add .

    git commit -am "Initial Push #1"

  9. Klicken Sie auf Start > Synchronisieren > Aktionen > Eingabeaufforderung öffnen.Select Home > Sync > Actions > Open Command Prompt. Die Eingabeaufforderung wird im Projektverzeichnis geöffnet.The command prompt opens to the project directory.

  10. Geben Sie im Befehlsfenster folgenden Befehl ein:Enter the following command in the command window:

    git push -u Azure-SampleApp master

  11. Geben Sie das Kennwort für die Azure-Anmeldeinformationen für die Bereitstellung ein, das Sie zuvor in Azure erstellt haben.Enter the Azure deployment credentials password created earlier in Azure.

    Dieser Befehl startet eine Übertragung der lokalen Projektdateien mithilfe von Push in Azure.This command starts the process of pushing the local project files to Azure. Die Ausgabe des obigen Befehls endet mit der Meldung, dass die Bereitstellung erfolgreich war.The output from the above command ends with a message that the deployment was successful.

    remote: Finished successfully.
    remote: Running post deployment command(s)...
    remote: Deployment successful.
    To https://username@samplewebappdemo01.scm.azurewebsites.net:443/SampleWebAppDemo01.git
    * [new branch]      master -> master
    Branch master set up to track remote branch master from Azure-SampleApp.
    

    Hinweis

    Wenn bei dem Projekt eine Zusammenarbeit erforderlich ist, sollten Sie in Erwägung ziehen, vor der Übertragung mithilfe von Push in Azure eine Übertragung mithilfe von Push in GitHub durchzuführen.If collaboration on the project is required, consider pushing to GitHub before pushing to Azure.

Überprüfen der aktiven BereitstellungVerify the Active Deployment

Überprüfen Sie, ob die Übertragung der Web-App über die lokale Umgebung in Azure erfolgreich war.Verify that the web app transfer from the local environment to Azure is successful.

Wählen Sie die Web-App im Azure-Portal aus.In the Azure Portal, select the web app. Wählen Sie Bereitstellung > Bereitstellungsoptionen aus.Select Deployment > Deployment options.

Azure-Portal: Blatt "Einstellungen": Blatt „Bereitstellungen“ mit erfolgreicher Bereitstellung

Ausführen der App in AzureRun the app in Azure

Führen Sie die App aus, nachdem die Web-App in Azure bereitgestellt wurde.Now that the web app is deployed to Azure, run the app.

Dafür stehen zwei Methoden zur Verfügung:This can be accomplished in two ways:

  • Suchen Sie im Azure-Portal das Blatt „Web-App“ für die Web-App.In the Azure Portal, locate the web app blade for the web app. Wählen Sie Durchsuchen, um die App im Standardbrowser anzuzeigen.Select Browse to view the app in the default browser.
  • Öffnen Sie einen Browser, und geben Sie die URL für die Web-App ein.Open a browser and enter the URL for the web app. Ein Beispiel: http://SampleWebAppDemo.azurewebsites.netExample: http://SampleWebAppDemo.azurewebsites.net

Aktualisieren der Web-App und erneutes VeröffentlichenUpdate the web app and republish

Veröffentlichen Sie den lokalen Code erneut, nachdem Sie Änderungen daran vorgenommen haben:After making changes to the local code, republish:

  1. Öffnen Sie in Visual Studio im Projektmappen-Explorer die Datei Startup.cs.In Solution Explorer of Visual Studio, open the Startup.cs file.

  2. Ändern Sie in der Configure-Methode die Response.WriteAsync-Methode so, dass sie wie folgt angezeigt wird:In the Configure method, modify the Response.WriteAsync method so that it appears as follows:

    await context.Response.WriteAsync("Hello World! Deploy to Azure.");
    
  3. Speichern Sie die Änderungen in Startup.cs.Save the changes to Startup.cs.

  4. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Projektmappe „SampleWebAppDemo“, und wählen Sie Commit ausführen aus.In Solution Explorer, right-click Solution 'SampleWebAppDemo' and select Commit. Der Team Explorer wird angezeigt.The Team Explorer is displayed.

  5. Geben Sie eine Commit-Nachricht ein, wie z.B. Update #2.Enter a commit message, such as Update #2.

  6. Klicken Sie auf die Schaltfläche Commit ausführen, um die Projektänderungen zu committen.Press the Commit button to commit the project changes.

  7. Klicken Sie auf Start > Synchronisieren > Aktionen > Push.Select Home > Sync > Actions > Push.

Hinweis

Als Alternative können Sie die Änderungen im Befehlsfenster mithilfe von Push übertragen, indem Sie das Befehlsfenster öffnen, zum Projektverzeichnis wechseln und einen Git-Befehl eingeben.As an alternative, push the changes from the Command Window by opening the Command Window, changing to the project directory, and entering a git command. Beispiel:Example:

git push -u Azure-SampleApp master

Anzeigen der aktualisierten Web-App in AzureView the updated web app in Azure

Zeigen Sie die aktualisierte Web-App an, indem Sie im Azure-Portal auf dem Blatt „Web-App“ Durchsuchen auswählen oder einen Browser öffnen und die URL der Web-App eingeben.View the updated web app by selecting Browse from the web app blade in the Azure Portal or by opening a browser and entering the URL for the web app. Ein Beispiel: http://SampleWebAppDemo.azurewebsites.netExample: http://SampleWebAppDemo.azurewebsites.net

Zusätzliche RessourcenAdditional resources