Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Eine Funktionen-App wird für eine bestimmte Version der Azure Functions-Runtime ausgeführt. Standardmäßig erstellen Sie Funktions-Apps in der neuesten 4.x-Version der Funktionslaufzeit. Ihre Funktions-Apps werden nur unterstützt, wenn sie in einer unterstützten Hauptversion ausgeführt werden. In diesem Artikel wird erläutert, wie Sie eine Funktions-App in Azure so konfigurieren, dass sie bei Bedarf an eine bestimmte Version der Funktionenslaufzeitumgebung gebunden oder festgelegt wird.
Überlegungen
Beachten Sie diese Überlegungen bei der Ausrichtung auf eine bestimmte Laufzeitversion:
- Der Flex-Verbrauchsplan wird nur auf Version 4.x der Laufzeit ausgeführt. Da der Flex-Verbrauchsplan die
FUNCTIONS_EXTENSION_VERSIONApp-Einstellung nicht unterstützt, kann Ihre App nicht auf eine bestimmte Laufzeitversion abzielen, wenn sie in diesem Plan ausgeführt wird. - Das Durchführen der Konfiguration für eine bestimmte Version hängt davon ab, ob Windows oder Linux ausgeführt wird.
- Dieser Artikel ist spezifisch für Windows oder Linux. Wählen Sie am Anfang des Artikels Ihr Betriebssystem aus.
- Wenn möglich, führen Sie Ihre App immer auf der neuesten unterstützten Laufzeitversion aus. Legen Sie Ihre App nur auf eine bestimmte Version fest, wenn Sie aufgrund eines Problems mit der neuesten Version dazu aufgefordert werden. Sie sollten immer zur neuesten Runtimeversion wechseln, sobald Ihre Funktionen ordnungsgemäß ausgeführt werden können.
- Während der lokalen Entwicklung muss Ihre installierte Version von Azure Functions Core Tools mit der Hauptversion der Runtime übereinstimmen, die von der Funktions-App in Azure verwendet wird. Weitere Informationen finden Sie in der Core Tools-Versionen.
Aktualisieren der Runtimeversion
Wenn möglich, führen Sie Ihre Funktions-Apps immer auf der neuesten unterstützten Version der Azure Functions-Laufzeit aus. Wenn Ihre Funktions-App derzeit in einer älteren Version der Laufzeit ausgeführt wird, migrieren Sie Ihre App zu Version 4.x.
Wenn Ihre App über vorhandene Funktionen verfügt, müssen Sie Vorkehrungen treffen, bevor Sie zu einer höheren Runtime-Hauptversion wechseln. In den folgenden Artikeln werden Breaking Changes zwischen Hauptversionen ausführlich beschrieben, einschließlich sprachspezifischer Breaking Changes. Darüber hinaus erhalten Sie schrittweise Anleitungen für eine erfolgreiche Migration Ihrer vorhandenen Funktions-App.
Informationen zum Ermitteln der aktuellen Runtimeversion finden Sie unter Anzeigen der aktuellen Runtimeversion.
Anzeigen der aktuellen Runtimeversion
Sie können die aktuelle Runtimeversion Ihrer Funktions-App auf eine der folgenden Arten anzeigen:
Führen Sie die folgenden Schritte aus, um die derzeit von einer Funktions-App verwendete Runtimeversion anzuzeigen und zu aktualisieren:
Navigieren Sie im Azure-Portal zu Ihrer Funktions-App.
Erweitern Sie Einstellungen, und wählen Sie dann Konfiguration aus.
Notieren Sie sich auf der Registerkarte Einstellungen der Funktionsruntime die Runtimeversion. In diesem Beispiel ist die Version auf
~4festgelegt.
Anheften an eine bestimmte Version
Mit Azure Functions können Sie die FUNCTIONS_EXTENSION_VERSION-App-Einstellung verwenden, um eine bestimmte Runtimeversion als Ziel für eine bestimmte Funktions-App festzulegen. Wenn Sie nur die Hauptversion (~4) angeben, wird die Funktions-App automatisch auf neue Nebenversionen der Laufzeit aktualisiert, sobald sie verfügbar sind. Nebenversionsupdates sind automatisch, da neue Nebenversionen wahrscheinlich keine Änderungen einführen, die Ihre Funktionen unterbrechen.
Linux-Apps verwenden die linuxFxVersion-Siteeinstellung zusammen mit FUNCTIONS_EXTENSION_VERSION, um das richtige Linux-Basisimage zu bestimmen, in dem Ihre Funktionen ausgeführt werden sollen. Wenn Sie eine neue Funktions-App unter Linux erstellen, wählt die Runtime automatisch das richtige Basisimage basierend auf der Runtimeversion Ihres Sprachstapels aus.
Durch das Anheften an eine bestimmte Laufzeitversion wird die Funktions-App neu gestartet.
Wenn Sie eine bestimmte Nebenversion (z. B. 4.0.12345) in FUNCTIONS_EXTENSION_VERSION angeben, heften Sie die Funktions-App an diese bestimmte Version der Laufzeit, bis Sie sich ausdrücklich entscheiden, zu automatischen Versionsupdates zurückzukehren. Binden Sie sich nur so lange an eine bestimmte Nebenversion, um alle Probleme mit Ihrer Funktions-App zu beheben, die Sie daran hindern, auf die Hauptversion umzusteigen. Ältere Nebenversionen werden regelmäßig aus der Produktionsumgebung entfernt. Wenn Ihre Funktions-App auf eine Nebenversion festgelegt wird, die später entfernt wird, läuft Ihre Funktions-App auf der nächstgelegenen vorhandenen Version anstelle der in FUNCTIONS_EXTENSION_VERSION festgelegten Version.
Ankündigungen des App-Diensts geben Nebenversionsentfernungen an.
Hinweis
Wenn Sie die Veröffentlichung über Visual Studio in einer App ausprobieren, die an eine bestimmte Nebenversion der Runtime angeheftet ist, werden Sie in einem Dialogfeld aufgefordert, auf die neueste Version zu aktualisieren oder die Veröffentlichung abzubrechen. Um diese Überprüfung zu vermeiden, wenn Sie eine bestimmte Nebenversion verwenden müssen, fügen Sie die Eigenschaft <DisableFunctionExtensionVersionUpdate>true</DisableFunctionExtensionVersionUpdate> in der Datei .csproj hinzu.
Verwenden Sie eine dieser Methoden, um Ihre App vorübergehend an eine bestimmte Version der Runtime anzuheften:
Führen Sie die folgenden Schritte aus, um die derzeit von einer Funktions-App verwendete Runtimeversion anzuzeigen und zu aktualisieren:
Navigieren Sie im Azure-Portal zu Ihrer Funktions-App.
Erweitern Sie Einstellungen, und wählen Sie dann Konfiguration aus.
Notieren Sie sich auf der Registerkarte Einstellungen der Funktionsruntime die Runtimeversion. In diesem Beispiel ist die Version auf
~4festgelegt.
Wenn Sie Ihre App an eine bestimmte Nebenversion anheften möchten, erweitern Sie im linken Bereich Einstellungen, und wählen Sie dann Umgebungsvariablen aus.
Wählen Sie auf der Registerkarte App-Einstellungen die Option FUNCTIONS_EXTENSION_VERSION aus, ändern Sie den Wert in Ihre gewünschte Nebenversion, und wählen Sie dann Übernehmen aus.
Wählen Sie Übernehmen und dann Bestätigen aus, um die Änderungen anzuwenden und die App neu zu starten.
Die Funktions-App startet neu, nachdem die Änderung an der Anwendungseinstellung vorgenommen wurde.
Um Ihre Funktions-App an eine bestimmte Laufzeitversion unter Linux anzuheften, legen Sie eine versionsspezifische Basisimage-URL in der linuxFxVersion Websiteeinstellung im Format DOCKER|<PINNED_VERSION_IMAGE_URI>fest.
Wichtig
Angeheftete Funktions-Apps unter Linux erhalten keine regelmäßigen Updates für Sicherheits- und Hostfunktionalität. Sofern Sie keine anderweitigen Empfehlungen durch den Support erhalten haben, verwenden Sie die Einstellung FUNCTIONS_EXTENSION_VERSION und einen standardmäßigen linuxFxVersion-Wert für Sprache und Version, z. B. Python|3.12. Gültige Werte finden Sie im Referenzartikel zu linuxFxVersion.
Das Anheften an eine bestimmte Runtime für Linux-Funktions-Apps, die in einem Verbrauchsplan ausgeführt werden, derzeit nicht unterstützt.
Nachfolgend wird ein Beispiel für den linuxFxVersion-Wert angezeigt, der erforderlich ist, um eine Node.js 16-Funktions-App an die spezifische Runtimeversion 4.14.0.3 anzuheften:
DOCKER|mcr.microsoft.com/azure-functions/node:4.14.0.3-node16
Bei Bedarf kann eine Supportfachkraft Ihnen einen gültigen Basisimage-URI für Ihre Anwendung nennen.
Verwenden Sie die folgenden Azure CLI-Befehle, um die linuxFxVersion anzuzeigen und festzulegen. Sie können linuxFxVersion derzeit nicht im Portal oder mithilfe von Azure PowerShell festlegen:
Um die aktuelle Version der Runtime anzuzeigen, verwenden Sie den Befehl az functionapp config show:
az functionapp config show --name <function_app> \ --resource-group <my_resource_group> --query 'linuxFxVersion' -o tsvErsetzen Sie in diesem Code
<function_app>durch den Namen der Funktions-App. Ersetzen Sie außerdem<my_resource_group>durch den Namen der Ressourcengruppe für Ihre Funktions-App. Der aktuelle Wert vonlinuxFxVersionwird zurückgegeben.Um die Einstellung
linuxFxVersionin der Funktions-App zu aktualisieren, verwenden Sie den Befehl az functionapp config set:az functionapp config set --name <FUNCTION_APP> \ --resource-group <RESOURCE_GROUP> \ --linux-fx-version <LINUX_FX_VERSION>Ersetzen Sie
<FUNCTION_APP>durch den Namen der Funktions-App. Ersetzen Sie außerdem<RESOURCE_GROUP>durch den Namen der Ressourcengruppe für Ihre Funktions-App. Ersetzen Sie zum Schluss<LINUX_FX_VERSION>durch den Wert des Images, das Ihnen von einer Supportfachkraft genannt wurde.
Sie können diese Befehle über Azure Cloud Shell ausführen, indem Sie in den vorangehenden Codebeispielen Cloud Shell öffnen auswählen. Sie können auch die Azure-Befehlszeilenschnittstelle lokal zum Ausführen dieses Befehls verwenden, nachdem Sie sich mit az login angemeldet haben.
Die Funktions-App wird neu gestartet, nachdem die Änderung der Sitekonfiguration vorgenommen wurde.