Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Mit Azure Functions können Sie die Änderungen, die in einem Repository für die Quellcodeverwaltung vorgenommen wurden, kontinuierlich in einer verbundenen Funktions-App bereitstellen. Die Integration der Quellcodeverwaltung ermöglicht einen Workflow, in dem ein Codeaktualisierung Build, Paketieren und Bereitstellen von Ihrem Projekt in Azure auslöst.
Sie sollten die kontinuierliche Bereitstellung für einen Stagingslot und nicht für den Produktionsplatz konfigurieren. Wenn Sie den Produktionsslot verwenden, werden Codeupdates direkt an die Produktion übertragen, ohne in Azure überprüft zu werden. Aktivieren Sie stattdessen die kontinuierliche Bereitstellung für einen Stagingslot, überprüfen Sie Updates im Stagingslot, und nachdem alles ordnungsgemäß ausgeführt wurde, können Sie den Stagingslotcode in die Produktion vertauschen. Wenn Sie eine Verbindung mit einem Produktionsslot herstellen, stellen Sie sicher, dass nur Produktionsqualitätscode in die integrierte Codeverzweigung eingebracht wird.
Die Schritte in diesem Artikel zeigen, wie Sie fortlaufende Codebereitstellungen für Ihre Funktions-App in Azure mithilfe des Bereitstellungscenters im Azure-Portal konfigurieren. Sie können auch die Continuous Integration mithilfe der Azure CLI konfigurieren. Diese Schritte können entweder für einen Staging- oder einen Produktionsslot durchgeführt werden.
Funktionen unterstützen diese Quellen für das Continuous Deployment für Ihre App:
Verwalten Sie Ihren Projektcode in Azure Repos, einem der Dienste in Azure DevOps. Unterstützt die Git und Team Foundation-Versionskontrolle. Wird mit dem Azure Pipelines-Buildanbieter verwendet. Weitere Informationen finden Sie unter Was ist Azure Repos?.
Sie können Ihre Funktions-App auch mit einem externen Git-Repository verbinden, dies erfordert jedoch eine manuelle Synchronisierung. Weitere Informationen zu Bereitstellungsoptionen finden Sie unter Bereitstellungstechnologien in Azure Functions.
Hinweis
Die in diesem Artikel behandelten Optionen für das Continuous Deployment sind spezifisch für Nur-Code-Bereitstellungen. Informationen zu Bereitstellungen containerisierter Funktionen finden Sie unter Aktivieren des Continuous Deployment von Containern in Azure.
Anforderungen
Die Bereitstellungseinheit für Funktionen in Azure ist die Funktions-App. Damit Continuous Deployment erfolgreich ausgeführt werden kann, muss die Verzeichnisstruktur Ihres Projekts mit der Basisordnerstruktur kompatibel sein, die von Azure Functions erwartet wird. Wenn Sie Ihr Codeprojekt mit Azure Functions Core Tools, Visual Studio Code oder Visual Studio erstellen, werden die Azure Functions-Vorlagen verwendet, um Codeprojekte mit der richtigen Verzeichnisstruktur zu erstellen. Alle Funktionen in einer Funktions-App werden gleichzeitig und im selben Paket bereitgestellt.
Nach Aktivierung von Continuous Deployment wird der Zugriff auf Funktionscode im Azure-Portal als schreibgeschützt konfiguriert, da die Source of Truth auf einen anderen Ort festgelegt ist.
Hinweis
Das Bereitstellungscenter unterstützt kein Continuous Deployment für eine Funktions-App mit eingehenden Netzwerkeinschränkungen. Stattdessen müssen Sie den Buildanbieter-Workflow direkt in GitHub oder Azure Pipelines konfigurieren. Diese Workflows erfordern auch, dass Sie einen virtuellen Computer im selben virtuellen Netzwerk wie die Funktions-App als selbst gehosteter Agent (Azure Pipelines) oder einen selbst gehosteten Runner (GitHub) verwenden.
Wählen Sie einen Buildanbieter aus
Das Erstellen Ihres Codeprojekts ist Teil des Bereitstellungsprozesses. Der spezifische Buildprozess hängt von Ihrem spezifischen Sprachstapel, Betriebssystem und Hostingplan ab. Builds können lokal oder remote durchgeführt werden, je nach Ihrem spezifischen Hosting. Weitere Informationen finden Sie unter Remotebuild.
Wichtig
Für mehr Sicherheit sollten Sie einen Buildanbieter verwenden, der verwaltete Identitäten unterstützt, z. B. Azure Pipelines oder GitHub Actions. Sie müssen für App Service (Kudu) die Standardauthentifizierung aktivieren und textbasierte Anmeldeinformationen verwenden.
Die Funktion unterstützt diese Build-Provider:
Azure Pipelines ist einer der Dienste in Azure DevOps und der Standardbuildanbieter für Azure Repos-Projekte. Sie können Auch Azure Pipelines verwenden, um Projekte von GitHub zu erstellen. In Azure-Pipelines gibt es eine AzureFunctionApp
Aufgabe, die speziell für die Bereitstellung in Azure-Funktionen entwickelt wurde. Mit dieser Aufgabe können Sie steuern, wie das Projekt erstellt, gepackt und bereitgestellt wird. Unterstützung verwalteter Identitäten:
Beachten Sie die Stärken und Einschränkungen dieser Anbieter, wenn Sie die Integration der Quellcodeverwaltung aktivieren. Möglicherweise müssen Sie ihren Quelltyp Ihres Repositorys ändern, um einen bestimmten Anbieter nutzen zu können.
Konfigurieren von Continuous Deployment
Das Azure-Portal bietet ein Bereitstellungscenter für Ihre Funktions-Apps, wodurch die Konfiguration der kontinuierlichen Bereitstellung vereinfacht wird. Die spezifische Art und Weise, wie Sie Continuous Deployment konfigurieren, hängt sowohl von der Art des Repositorys für die Quellcodeverwaltung ab, in der sich Ihr Code befindet, als auch vom Buildanbieter, den Sie auswählen.
Navigieren Sie im Azure-Portal zur Seite Ihrer Funktions-App und wählen Sie im linken Bereich unter Bereitstellung das Bereitstellungscenter aus.
Wählen Sie den Quell-Repositorytyp aus, in dem Ihr Projektcode aus einer der folgenden unterstützten Optionen verwaltet wird:
Bereitstellungen von Azure Repos, die Azure-Pipelines verwenden, werden im Azure DevOps-Portal und nicht aus Ihrer Funktions-App definiert. Eine schrittweise Anleitung zum Erstellen einer Azure Pipelines-basierten Bereitstellung aus Azure Repos finden Sie unter Fortlaufende Bereitstellung mit Azure Pipelines.
Nach Abschluss der Bereitstellung wird der gesamte Code aus der angegebenen Quelle für Ihre App bereitgestellt. An diesem Punkt lösen Änderungen in der Bereitstellungsquelle eine Bereitstellung dieser Änderungen in Ihrer Funktions-App in Azure aus.
Aktivieren von Continuous Deployment während der App-Erstellung
Derzeit können Sie Continuous Deployment über GitHub mithilfe von GitHub Actions konfigurieren, wenn Sie Ihre Funktions-App im Azure-Portal erstellen. Dazu können Sie die Registerkarte Bereitstellung auf der Seite Funktions-App erstellen verwenden.
Wenn Sie eine andere Bereitstellungsquelle oder einen anderen Buildanbieter für Continuous Integration verwenden möchten, erstellen Sie zuerst Ihre Funktions-App, kehren Sie dann zum Portal zurück, und richten Sie Continuous Integration im Bereitstellungscenter ein.
Aktivieren der Standardauthentifizierung für Bereitstellungen
In manchen Fällen wird Ihre Funktions-App mit deaktiviertem Standardauthentifizierungszugriff auf den scm
-Endpunkt erstellt. Dies blockiert die Veröffentlichung durch alle Methoden, die keine verwalteten Identitäten verwenden können, um auf den scm
-Endpunkt zuzugreifen. Die Auswirkungen der Veröffentlichung, wenn der scm
Endpunkt deaktiviert wurde, sind in "Bereitstellen ohne Standardauthentifizierung" detailliert beschrieben.
Wichtig
Wenn Sie die Standardauthentifizierung verwenden, werden Anmeldeinformationen als Klartext gesendet. Um diese Anmeldeinformationen zu schützen, dürfen Sie nur bei Verwendung der Standardauthentifizierung über eine verschlüsselte Verbindung (HTTPS) auf den scm
-Endpunkt zugreifen. Weitere Informationen finden Sie unter Sichere Bereitstellung.
So aktivieren Sie die Standardauthentifizierung für den scm
-Endpunkt
Wechseln Sie im Azure-Portal zu Ihrer Funktions-App.
Wählen Sie im linken Menü der App Einstellungen>, Konfiguration> und Allgemeine Einstellungen aus.
Legen Sie Veröffentlichungsanmeldeinformationen für die SCM-Standardauthentifizierung auf Ein fest, und wählen Sie dann Speichern aus.