Freigeben über


Erstellen Ihrer ersten containerisierten Funktionen in Azure Container Apps

In diesem Artikel erstellen Sie eine Funktions-App, die in einem Linux-Container ausgeführt wird, und stellen sie in einer Azure Container Apps-Umgebung aus einer Containerregistrierung bereit. Durch die Bereitstellung in Container Apps können Sie Ihre Funktions-Apps in cloudnative Microservices integrieren. Weitere Informationen finden Sie unter Azure Container Apps-Hosting von Azure Functions.

In diesem Artikel erfahren Sie, wie Sie Funktionen erstellen, die in einem Linux-Container ausgeführt werden, und den Container in einer Container-Apps-Umgebung bereitstellen.

Wenn Sie diesen Schnellstart ausführen, fallen in Ihrem Azure-Konto geringe Kosten von einigen USD-Cent oder weniger an, die Sie minimieren können, indem Sie Ressourcen bereinigen, wenn Sie fertig sind.

Wählen der Programmiersprache

Zunächst verwenden Sie Azure Functions-Tools, um Ihren Projektcode als Funktions-App in einem Docker-Container mit einem sprachspezifischen Linux-Basisimage zu erstellen. Stellen Sie sicher, dass Sie die gewünschte Sprache oben im Artikel auswählen.

Core Tools generiert automatisch eine Dockerfile-Datei für Ihr Projekt, die die aktuellste Version des richtigen Basisimages für Ihre Funktionssprache verwendet. Sie sollten Ihren Container regelmäßig aus dem neuesten Basisimage aktualisieren und aus der aktualisierten Version Ihres Containers erneut bereitstellen. Weitere Informationen finden Sie unter Erstellen von containerisierten Funktions-Apps.

Voraussetzungen

Bevor Sie beginnen, müssen die folgenden Voraussetzungen erfüllt sein:

Sollten Sie über kein Azure-Abonnement verfügen, können Sie zunächst ein kostenloses Azure-Konto erstellen.

Um das containerisierte Funktions-App-Image, das Sie erstellen, in einer Containerregistrierung zu veröffentlichen, benötigen Sie eine Docker-ID und Docker auf Ihrem lokalen Computer. Wenn Sie über keine Docker-ID verfügen, können Sie ein Docker-Konto erstellen.

Sie müssen auch den Abschnitt Erstellen einer Containerregistrierung des Container Registry-Schnellstarts abschließen, um eine Registrierungsinstanz zu erstellen. Notieren Sie sich den vollqualifizierten Namen Ihres Anmeldeservers.

Erstellen und Aktivieren einer virtuellen Umgebung

Führen Sie die folgenden Befehle in einem geeigneten Ordner aus, um eine virtuelle Umgebung mit dem Namen .venv zu erstellen und zu aktivieren. Stellen Sie sicher, eine der von Azure Functions unterstützten Python-Versionen zu verwenden.

python -m venv .venv
source .venv/bin/activate

Führen Sie den folgenden Befehl aus, wenn über Python das venv-Paket auf Ihrer Linux-Distribution nicht installiert wurde:

sudo apt-get install python3-venv

Sie führen alle nachfolgenden Befehle in dieser aktivierten virtuellen Umgebung aus.

Erstellen und Testen des lokalen Funktionsprojekts

Führen Sie in einem Terminal oder an einer Eingabeaufforderung den folgenden Befehl für die gewählte Sprache aus, um ein Funktions-App-Projekt im aktuellen Ordner zu erstellen:

func init --worker-runtime dotnet-isolated --docker
func init --worker-runtime node --language javascript --docker
func init --worker-runtime powershell --docker
func init --worker-runtime python --docker
func init --worker-runtime node --language typescript --docker

Führen Sie in einem leeren Ordner den folgenden Befehl aus, um das Functions-Projekt über einen Maven-Archetyp zu generieren:

mvn archetype:generate -DarchetypeGroupId=com.microsoft.azure -DarchetypeArtifactId=azure-functions-archetype -DjavaVersion=8 -Ddocker

Der -DjavaVersion-Parameter teilt der Functions-Runtime mit, welche Version von Java verwendet werden soll. Verwenden Sie -DjavaVersion=11, wenn Sie Ihre Funktionen in Java 11 ausführen möchten. Wenn Sie -DjavaVersion nicht angeben, wird für Maven standardmäßig Java 8 verwendet. Weitere Informationen finden Sie unter Java-Versionen.

Wichtig

Damit Sie diesen Artikel durcharbeiten können, muss die Umgebungsvariable JAVA_HOME auf den Installationsspeicherort der richtigen Version des JDK festgelegt sein.

Maven fordert Sie zur Eingabe von Werten auf, die erforderlich sind, um die Generierung des Projekts bei der Bereitstellung abzuschließen. Geben Sie an den Eingabeaufforderungen die folgenden Informationen an:

Prompt Wert BESCHREIBUNG
groupId com.fabrikam Ein Wert, der Ihr Projekt projektübergreifend eindeutig identifiziert. Für den Wert müssen die Paketbenennungsregeln für Java eingehalten werden.
artifactId fabrikam-functions Der Name des Behälters (ohne Versionsnummer).
version 1.0-SNAPSHOT Wählen Sie den Standardwert aus.
package com.fabrikam.functions Das Java-Paket für den generierten Funktionscode. Verwenden Sie den Standardwert.

Geben Sie zur Bestätigung Y ein, oder drücken Sie die EINGABETASTE.

Maven erstellt die Projektdateien in einem neuen Ordner namens artifactId, in diesem Beispiel fabrikam-functions.

Mit der Option --docker wird eine Dockerfile-Datei für das Projekt generiert, in der ein geeigneter benutzerdefinierter Container zur Verwendung mit Azure Functions und der ausgewählten Runtime definiert wird.

Navigieren Sie zum Projektordner:

cd fabrikam-functions

Fügen Sie mit dem folgenden Befehl dem Projekt eine Funktion hinzu. Hierbei ist das --name-Argument der eindeutige Name Ihrer Funktion, und mit dem --template-Argument wird der Trigger der Funktion angegeben. func new erstellt eine C#-Codedatei in Ihrem Projekt.

func new --name HttpExample --template "HTTP trigger"

Fügen Sie mit dem folgenden Befehl dem Projekt eine Funktion hinzu. Hierbei ist das --name-Argument der eindeutige Name Ihrer Funktion, und mit dem --template-Argument wird der Trigger der Funktion angegeben. Mit func new wird ein Unterordner mit dem Funktionsnamen erstellt, der eine Konfigurationsdatei mit dem Namen func new enthält.

func new --name HttpExample --template "HTTP trigger"

Starten Sie zum lokalen Testen der Funktion den lokalen Azure Functions-Runtimehost im Stammverzeichnis des Projektordners.

func start  
func start  
npm install
npm start
mvn clean package  
mvn azure-functions:run

Wenn Sie sehen, dass der HttpExample-Endpunkt in die Ausgabe geschrieben wurde, navigieren Sie zu diesem Endpunkt. In der Antwortausgabe sollte eine Willkommensnachricht angezeigt werden.

Wenn Sie sehen, dass der HttpExample-Endpunkt in die Ausgabe geschrieben wurde, navigieren Sie zu http://localhost:7071/api/HttpExample?name=Functions. Im Browser muss eine Begrüßungsnachricht mit Functions (dem für den Abfrageparameter name angegebenen Wert) angezeigt werden.

Drücken Sie STRG+C (Command+C unter macOS), um den Host zu beenden.

Erstellen und lokales Überprüfen des Containerimages

(Optional) Untersuchen Sie die Dockerfile im Stammverzeichnis des Projektordners. In der Dockerfile wird die Umgebung beschrieben, die zum Ausführen der Funktions-App unter Linux benötigt wird. Die vollständige Liste mit den unterstützten Basisimages für Azure Functions finden Sie auf der Seite mit Azure Functions-Basisimages.

Führen Sie im Stammprojektordner den Befehl docker build aus, und geben Sie einen Namen (azurefunctionsimage) und ein Tag (v1.0.0) an. Ersetzen Sie <DOCKER_ID> durch Ihre Docker Hub-Konto-ID. Dieser Befehl erstellt das Docker-Image für den Container.

docker build --tag <DOCKER_ID>/azurefunctionsimage:v1.0.0 .

Nachdem der Befehl abgeschlossen wurde, können Sie den neuen Container lokal ausführen.

Führen Sie das Image zum Überprüfen des Builds in einem lokalen Container aus, indem Sie den Befehl docker run verwenden, erneut <DOCKER_ID> durch Ihre Docker Hub-Konto-ID ersetzen und das Portargument -p 8080:80 hinzufügen:

docker run -p 8080:80 -it <DOCKER_ID>/azurefunctionsimage:v1.0.0

Nachdem das Image im lokalen Container gestartet wurde, navigieren Sie zu http://localhost:8080/api/HttpExample, das dieselbe Begrüßungsnachricht wie zuvor anzeigen muss. Da die von Ihnen erstellte von HTTP ausgelöste Funktion anonyme Autorisierung verwendet, können Sie die im Container ausgeführte Funktion aufrufen, ohne einen Zugriffsschlüssel abrufen zu müssen. Weitere Informationen finden Sie unter Autorisierungsschlüssel.

Nachdem das Image im lokalen Container gestartet wurde, navigieren Sie zu http://localhost:8080/api/HttpExample?name=Functions, das dieselbe Begrüßungsnachricht wie zuvor anzeigen muss. Da die von Ihnen erstellte von HTTP ausgelöste Funktion anonyme Autorisierung verwendet, können Sie die im Container ausgeführte Funktion aufrufen, ohne einen Zugriffsschlüssel abrufen zu müssen. Weitere Informationen finden Sie unter Autorisierungsschlüssel.

Drücken Sie nach der Überprüfung der Funktions-App im Container STRG+C (Command+C unter macOS), um die Ausführung zu beenden.

Veröffentlichen des Containerimages in einer Registrierung

Um Ihr Containerimage für die Bereitstellung in einer Hostingumgebung verfügbar zu machen, müssen Sie es in eine Containerregistrierung pushen. Als bewährte Methode für mehr Sicherheit sollten Sie eine Azure Container Registry-Instanz verwenden und Verbindungen mit verwalteten Identitäten erzwingen. Bei Docker Hub müssen Sie sich mit freigegebenen Geheimnissen authentifizieren, die ein Sicherheitsrisiko für Ihre Bereitstellungen bedeuten.

Azure Container Registry ist ein privater Registrierungsdienst zum Erstellen, Speichern und Verwalten von Containerimages und verwandten Artefakten. Sie sollten einen privaten Registrierungsdienst verwenden, um Ihre Container in Azure-Diensten zu veröffentlichen.

  1. Verwenden Sie diesen Befehl, um sich mit Ihren aktuellen Azure-Anmeldeinformationen bei Ihrer Registrierungsinstanz anzumelden:

    az acr login --name <REGISTRY_NAME>
    

    Ersetzen Sie <REGISTRY_NAME> im vorherigen Befehl durch den Namen Ihres Container Registry-Instanz.

  2. Verwenden Sie diesen Befehl, um Ihr Image mit dem vollqualifizierten Namen Ihres Registrierungsanmeldeservers zu markieren:

    docker tag <DOCKER_ID>/azurefunctionsimage:v1.0.0 <LOGIN_SERVER>/azurefunctionsimage:v1.0.0 
    

    Ersetzen Sie <LOGIN_SERVER> durch den vollqualifizierten Namen Ihres Registrierungsanmeldeservers und <DOCKER_ID> durch Ihre Docker-ID.

  3. Verwenden Sie diesen Befehl, um den Container in Ihre Registrierungsinstanz zu pushen:

    docker push <LOGIN_SERVER>/azurefunctionsimage:v1.0.0
    

Erstellen von unterstützenden Azure-Ressourcen für Ihre Funktion

Zum Bereitstellen Ihres Containers in Azure müssen Sie drei Ressourcen erstellen:

  • Eine Ressourcengruppe, bei der es sich um einen logischen Container für verwandte Ressourcen handelt.
  • Ein Speicherkonto, das verwendet wird, um den Status und andere Informationen zu Ihren Funktionen zu verwalten.
  • Eine Azure Container Apps-Umgebung mit einem Log Analytics-Arbeitsbereich.
  • Eine benutzerseitig zugewiesene verwaltete Identität ermöglicht Ihrer Funktions-App das Herstellen einer sicheren Verbindung mit Azure-Ressourcen ohne freigegebene Geheimnisse. Verbindungen mit dem Azure Storage-Konto und der Azure Container Registry-Instanz werden stattdessen mithilfe der Identität über die Microsoft Entra-Authentifizierung hergestellt. Dies wird für dieses Szenario empfohlen.

Hinweis

Docker Hub unterstützt keine verwalteten Identitäten.

Verwenden Sie die folgenden Befehle, um Ihre erforderlichen Azure-Ressourcen zu erstellen:

  1. Melden Sie sich bei Bedarf bei Azure an:

    Mit dem Befehl az login werden Sie bei Ihrem Azure-Konto angemeldet. Verwenden Sie az account set, wenn Ihrem Konto mehrere Abonnements zugeordnet sind.

  2. Führen Sie den folgenden Befehl aus, um die Azure CLI auf die neueste Version zu aktualisieren:

    az upgrade
    

    Wenn Ihre Version der Azure CLI nicht die neueste Version ist, beginnt eine Installation. Die Art des Upgrades hängt von Ihrem Betriebssystem ab. Sie können den Vorgang nach Abschluss des Upgrades fortsetzen.

  3. Führen Sie die folgenden Befehle aus, mit denen die Azure Container Apps-Erweiterung aktualisiert wird, und registrieren Sie die Namespaces, die für Container Apps erforderlich sind:

    az extension add --name containerapp --upgrade -y
    az provider register --namespace Microsoft.Web 
    az provider register --namespace Microsoft.App 
    az provider register --namespace Microsoft.OperationalInsights 
    
  4. Erstellen Sie eine Ressourcengruppe namens AzureFunctionsContainers-rg.

    az group create --name AzureFunctionsContainers-rg --location eastus
    

    Mit diesem Befehl az group create wird eine Ressourcengruppe in der Region „USA, Osten“ erstellt. Wenn Sie stattdessen eine Region in Ihrer Nähe nutzen möchten, verwenden Sie einen verfügbaren Regionscode, der mit dem Befehl az account list-locations zurückgegeben wird. Sie müssen nachfolgende Befehle ändern, damit Ihre benutzerdefinierte Region anstelle von eastus verwendet wird.

  5. Erstellen Sie die Azure Container Apps-Umgebung mit aktivierten Workloadprofilen.

    az containerapp env create --name MyContainerappEnvironment --enable-workload-profiles --resource-group AzureFunctionsContainers-rg --location eastus
    

    Die Ausführung dieses Befehls kann einige Minuten dauern.

  6. Erstellen Sie ein universelles Speicherkonto in Ihrer Ressourcengruppe und Region, ohne Zugriff mit gemeinsam verwendeten Schlüsseln.

    az storage account create --name <STORAGE_NAME> --location eastus --resource-group AzureFunctionsContainers-rg --sku Standard_LRS --allow-blob-public-access false --allow-shared-key-access false
    

    Der Befehl az storage account create erstellt das Speicherkonto, auf das nur mithilfe von bei Microsoft Entra authentifizierten Identitäten zugegriffen werden kann, denen Berechtigungen für bestimmte Ressourcen zugewiesen wurden.

    Ersetzen Sie im vorherigen Beispiel <STORAGE_NAME> durch einen Namen, der für Sie geeignet und eindeutig in Azure Storage ist. Storage-Namen dürfen nur 3 bis 24 Zeichen lang sein und müssen ausschließlich Ziffern und Kleinbuchstaben enthalten. Mit Standard_LRS wird ein universelles Konto angegeben, das von Functions unterstützt wird.

  7. Erstellen Sie eine verwaltete Identität, und verwenden Sie die zurückgegebene principalId, um ihr Zugriff auf Ihr Speicherkonto zu gewähren und Berechtigungen in Ihre Registrierungsinstanz zu pullen.

    principalId=$(az identity create --name <USER_IDENTITY_NAME> --resource-group AzureFunctionsContainers-rg --location eastus --query principalId -o tsv) 
    acrId=$(az acr show --name <REGISTRY_NAME> --query id --output tsv)
    az role assignment create --assignee-object-id $principalId --assignee-principal-type ServicePrincipal --role acrpull --scope $acrId
    storageId=$(az storage account show --resource-group AzureFunctionsContainers-rg --name glengatestaca2 --query 'id' -o tsv)
    az role assignment create --assignee-object-id $principalId --assignee-principal-type ServicePrincipal --role "Storage Blob Data Owner" --scope $storageId
    

    Der Befehl az identity create erstellt eine benutzerseitig zugewiesene verwaltete Identität, und die az role assignment create-Befehle fügen Ihre Identität den erforderlichen Rollen hinzu. Ersetzen Sie <REGISTRY_NAME>, <USER_IDENTITY_NAME> und <STORAGE_NAME> durch den Namen Ihrer Containerregistrierung, Ihrer verwalteten Identität bzw. Ihres Speicherkontos. Die verwaltete Identität kann jetzt von einer App verwendet werden, um sowohl auf das Speicherkonto als auch auf Azure Container Registry zuzugreifen, ohne freigegebene Geheimnisse zu verwenden.

Erstellen und Konfigurieren einer Funktions-App in Azure mit dem Image

Mit einer Funktions-App in Azure wird die Ausführung der Funktionen in Ihrer Azure Container Apps-Umgebung verwaltet. In diesem Abschnitt verwenden Sie die Azure-Ressourcen aus dem vorherigen Abschnitt, um eine Funktions-App aus einem Image in einer Containerregistrierung in einer Container Apps-Umgebung zu erstellen. Außerdem konfigurieren Sie die neue Umgebung mit einer Verbindungszeichenfolge für das erforderliche Azure Storage-Konto.

Verwenden Sie den Befehl az functionapp create, um eine Funktions-App in der neuen verwalteten Umgebung mit Azure Container Apps-Unterstützung zu erstellen. In az functionapp create gibt der --environment-Parameter gibt die Container Apps-Umgebung an.

Tipp

Um sicherzustellen, dass Ihre Funktions-App eine Verbindung mit einer verwalteten Identität mit Ihrer Registrierungsinstanz herstellt, legen Sie den --image-Parameter in az functionapp create nicht fest. Wenn Sie im Repository --image auf den vollqualifizierten Namen Ihres Bilds festlegen, werden freigegebene geheime Anmeldeinformationen aus Ihrer Registrierung abgerufen und in den App-Einstellungen gespeichert.

Sie müssen zunächst den vollqualifizierten ID-Wert Ihrer benutzerseitig zugewiesenen verwalteten Identität mit Pullzugriff auf die Registrierung abrufen und dann mit dem Befehl az functionapp create eine Funktions-App mit dem Standardbild und dieser zugewiesenen Identität erstellen.

UAMI_RESOURCE_ID=$(az identity show --name $uami_name --resource-group $group --query id -o tsv)
az functionapp create --name <APP_NAME> --storage-account <STORAGE_NAME> --environment MyContainerappEnvironment --workload-profile-name "Consumption" --resource-group AzureFunctionsContainers-rg --functions-version 4 --assign-identity $UAMI_RESOURCE_ID

In az functionapp create weist --assign-identity Ihre verwaltete Identität der neuen App zu. Da Sie den --image-Parameter in az functionapp create nicht festgelegt haben, wird die Anwendung mit einem Platzhalterbild erstellt.

Ersetzen Sie in diesem Beispiel <APP_NAME>, <STORAGE_NAME> und <USER_IDENTITY_NAME> jeweils durch einen Namen für Ihre neue Funktions-App, den Namen Ihres Speicherkontos und die Identität.

Zum Schluss müssen Sie die Websiteeinstellung linuxFxVersion auf den vollqualifizierten Namen Ihres Bilds im Repository aktualisieren. Sie müssen auch die Websiteeinstellungen acrUseManagedIdentityCreds und acrUserManagedIdentityID aktualisieren, damit beim Abrufen des Bilds aus der Registrierung verwaltete Identitäten verwendet werden.

UAMI_RESOURCE_ID=$(az identity show --name <USER_IDENTITY_NAME> --resource-group AzureFunctionsContainers-rg --query id -o tsv)
az resource patch --resource-group AzureFunctionsContainers-rg --name <APP_NAME> --resource-type "Microsoft.Web/sites" --properties "{ \"siteConfig\": { \"linuxFxVersion\": \"DOCKER|<REGISTRY_NAME>.azurecr.io/azurefunctionsimage:v1.0.0\", \"acrUseManagedIdentityCreds\": true, \"acrUserManagedIdentityID\":\"$UAMI_RESOURCE_ID\", \"appSettings\": [{\"name\": \"DOCKER_REGISTRY_SERVER_URL\", \"value\": \"<REGISTRY_NAME>.azurecr.io\"}]}}"

Zusätzlich zu den erforderlichen Websiteeinstellungen ändert der Befehl az resource patch auch die App-Einstellung DOCKER_REGISTRY_SERVER_URL in die URL Ihres Registrierungsservers.

Ersetzen Sie in diesem Beispiel <APP_NAME>, <REGISTRY_NAME> und <USER_IDENTITY_NAME> durch die Namen Ihrer Funktions-App, der Containerregistrierung bzw. der Identität.

Wenn Sie --workload-profile-name "Consumption" angeben, wird Ihre App in einer Umgebung mit dem standardmäßigen Workloadprofil Consumption erstellt. Hierfür fallen die gleichen Kosten an wie beim Ausführen in einem Container Apps-Plan vom Typ „Verbrauch“. Wenn Sie die Funktions-App zum ersten Mal erstellen, zieht sie das anfängliche Image aus Ihrer Registrierung.

Einstellungen für die Updateanwendung

Damit der Functions-Host mithilfe freigegebener Geheimnisse eine Verbindung mit dem Standardspeicherkonto herstellen kann, müssen Sie die Verbindungszeichenfolgeneinstellung AzureWebJobsStorage durch eine entsprechende Einstellung ersetzen, die eine benutzerseitig zugewiesene verwaltete Identität verwendet, um eine Verbindung mit dem Speicherkonto herzustellen.

  1. Entfernen Sie die vorhandene Verbindungszeichenfolgeneinstellung AzureWebJobsStorage:

    az functionapp config appsettings delete --name <APP_NAME> --resource-group AzureFunctionsContainers-rg --setting-names AzureWebJobsStorage 
    

    Mit dem Befehl az functionapp config appsettings delete entfernen Sie diese Einstellung aus Ihrer App. Ersetzen Sie <APP_NAME> durch den Namen der Funktions-App.

  2. Fügen Sie entsprechende Einstellungen mit einem AzureWebJobsStorage__-Präfix hinzu, das eine Verbindung mit dem Standardspeicherkonto mithilfe einer benutzerseitig zugewiesenen verwalteten Identität definiert:

    clientId=$(az identity show --name <USER_IDENTITY_NAME> --resource-group AzureFunctionsContainers-rg --query 'clientId' -o tsv)
    az functionapp config appsettings set --name <APP_NAME> --resource-group AzureFunctionsContainers-rg --settings AzureWebJobsStorage__accountName=<STORAGE_NAME> AzureWebJobsStorage__credential=managedidentity AzureWebJobsStorage__clientId=$clientId
    

    Ersetzen Sie in diesem Beispiel <APP_NAME>, <USER_IDENTITY_NAME> und <STORAGE_NAME> durch die Namen Ihrer Funktions-App, Ihrer Identität bzw. Ihres Speicherkontos.

An diesem Punkt werden Ihre Funktionen in einer Container Apps-Umgebung ausgeführt, wobei die erforderlichen Anwendungseinstellungen bereits hinzugefügt wurden. Bei Bedarf können Sie weitere Einstellungen in Ihrer Funktionen-App auf die übliche Weise für Funktionen hinzufügen. Weitere Informationen finden Sie unter Verwenden von Anwendungseinstellungen.

Tipp

Wenn Sie nachfolgend Änderungen am Funktionscode vornehmen, müssen Sie den Container neu erstellen, das Image in der Registrierung erneut veröffentlichen und die Funktions-App mit der neuen Imageversion aktualisieren. Weitere Informationen finden Sie unter Aktualisieren eines Images in der Registrierung.

Überprüfen Ihrer Funktionen in Azure

Nachdem das Image in Ihrer Funktions-App in Azure bereitgestellt wurde, können Sie die Funktion nun über HTTP-Anforderungen aufrufen.

  1. Führen Sie zum Abrufen der URL Ihrer neuen Funktion den folgenden Befehl az functionapp function show aus.

    az functionapp function show --resource-group AzureFunctionsContainers-rg --name <APP_NAME> --function-name HttpExample --query invokeUrlTemplate 
    

    Ersetzen Sie <APP_NAME> durch den Namen der Funktions-App.

  1. Verwenden Sie die soeben abgerufene URL, um den HttpExample-Funktionsendpunkt aufzurufen, und fügen Sie die Abfragezeichenfolge ?name=Functions an.
  1. Verwenden Sie die soeben abgerufene URL, um den HttpExample-Funktionsendpunkt aufzurufen.

Wenn Sie zu dieser URL navigieren, muss der Browser eine ähnliche Ausgabe anzeigen wie bei der lokalen Ausführung der Funktion.

Die Anforderungs-URL sollte in etwa wie folgt aussehen:

https://myacafunctionapp.kindtree-796af82b.eastus.azurecontainerapps.io/api/httpexample?name=functions

https://myacafunctionapp.kindtree-796af82b.eastus.azurecontainerapps.io/api/httpexample

Bereinigen von Ressourcen

Wenn Sie mit Azure Functions weiterarbeiten und die in diesem Artikel erstellten Ressourcen weiterhin nutzen möchten, können Sie sie alle beibehalten.

Wenn Sie mit dieser Funktions-App-Bereitstellung fertig sind, löschen Sie die Ressourcengruppe AzureFunctionsContainers-rg, um alle Ressourcen in dieser Gruppe zu bereinigen:

az group delete --name AzureFunctionsContainers-rg

Nächste Schritte