Share via


Tutorial: Erstellen und Bereitstellen Ihrer App in Azure Container Apps

In diesem Artikel wird veranschaulicht, wie Sie mithilfe Ihrer bevorzugten Programmiersprache einen Microservice für Azure Container Apps aus einem Quell-Repository erstellen und bereitstellen.

Dies ist das erste Tutorial in einer Reihe von Artikeln, die Sie durch die Verwendung der wichtigsten Funktionen in Azure Container Apps führen. Der erste Schritt besteht darin, einen Back-End-Web-API-Dienst zu erstellen, der eine statische Sammlung von Musikalben zurückgibt.

Hinweis

Sie können diese App auch mit dem Befehl az containerapp up erstellen und bereitstellen. Folgen Sie dazu den Anleitungen im Artikel Schnellstart: Erstellen und Bereitstellen einer App in Azure Container Apps aus einem Repository. Der Befehl az containerapp up bietet eine schnelle und praktische Methode, um Ihre App mithilfe eines einzigen Befehls zu erstellen und in Azure Container Apps bereitzustellen. Es bietet jedoch nicht die gleichen Anpassungsmöglichkeiten für Ihre Container-App.

Im nächsten Tutorial in der Reihe wird die Front-End-Webanwendung erstellt und in Azure Container Apps bereitgestellt.

Der folgende Screenshot zeigt die Ausgabe der Album-API, die in diesem Tutorial bereitgestellt wird.

Screenshot der Antwort vom API-Endpunkt für Alben.

Voraussetzungen

Zum Abschließen dieses Projekts benötigen Sie die folgenden Elemente:

Anforderung Anweisungen
Azure-Konto Erstellen Sie ein kostenloses Konto, falls Sie keines besitzen. Sie benötigen die Berechtigung Mitwirkender oder Besitzer für das Azure-Abonnement, um den Vorgang fortzusetzen.

Weitere Einzelheiten finden Sie unter Zuweisen von Azure-Rollen über das Azure-Portal.
GitHub-Konto Registrieren Sie sich kostenlos.
Git git installieren
Azure CLI Installieren Sie die Azure CLI.
Anforderung Anweisungen
Azure-Konto Erstellen Sie ein kostenloses Konto, falls Sie keines besitzen. Sie benötigen die Berechtigung Mitwirkender oder Besitzer für das Azure-Abonnement, um den Vorgang fortzusetzen. Weitere Einzelheiten finden Sie unter Zuweisen von Azure-Rollen über das Azure-Portal.
GitHub-Konto Registrieren Sie sich kostenlos.
Git git installieren
Azure CLI Installieren Sie die Azure CLI.
Docker Desktop Docker stellt Installationsprogramme zur Verfügung, die die Docker-Umgebung für macOS, Windows und Linux konfigurieren.

Geben Sie an der Eingabeaufforderung docker ein, um sicherzustellen, dass Docker ausgeführt wird.

Setup

Um sich ausgehend von der CLI bei Azure anzumelden, führen Sie den folgenden Befehl aus und befolgen Sie die Anweisungen, um den Authentifizierungsprozess abzuschließen.

az login

Verwenden Sie den Upgradebefehl, um sicherzustellen, dass Sie die neueste Version der CLI ausführen.

az upgrade

Installieren oder aktualisieren Sie als Nächstes die Azure Container Apps-Erweiterung für die CLI.

az extension add --name containerapp --upgrade

Nachdem die aktuelle Erweiterung oder das aktuelle Modul installiert ist, registrieren Sie nun die Namespaces Microsoft.App und Microsoft.OperationalInsights.

Hinweis

Azure Container Apps-Ressourcen wurden vom Microsoft.Web-Namespace zum Microsoft.App-Namespace migriert. Weitere Informationen finden Sie unter Namespacemigration von Microsoft.Web zu Microsoft.App im März 2022.

az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights

Erstellen von Umgebungsvariablen

Nachdem die Einrichtung Ihrer Azure CLI abgeschlossen ist, können Sie die Umgebungsvariablen definieren, die in diesem Artikel verwendet werden.

Definieren Sie die folgenden Variablen in Ihrer Bash-Shell.

RESOURCE_GROUP="album-containerapps"
LOCATION="canadacentral"
ENVIRONMENT="env-album-containerapps"
API_NAME="album-api"
FRONTEND_NAME="album-ui"
GITHUB_USERNAME="<YOUR_GITHUB_USERNAME>"

Bevor Sie diesen Befehl ausführen, müssen Sie <YOUR_GITHUB_USERNAME> durch Ihren GitHub-Benutzernamen ersetzen.

Definieren Sie als Nächstes einen für Sie eindeutigen Containerregistrierungsnamen.

ACR_NAME="acaalbums"$GITHUB_USERNAME

Vorbereiten des GitHub-Repositorys

Navigieren Sie zum Repository für Ihre bevorzugte Sprache und forken (verzweigen) Sie das Repository.

Wählen Sie oben im Album API-Repository die Schaltfläche Forken aus, um das Repository in Ihr Konto zu forken.

Jetzt können Sie Ihre Fork des Beispiel-Repositorys klonen.

Verwenden Sie den folgenden git-Befehl, um Ihr geforktes Repository in den Code-zu-Cloud-Ordner zu klonen:

git clone https://github.com/$GITHUB_USERNAME/containerapps-albumapi-csharp.git code-to-cloud

Ändern Sie als Nächstes das Verzeichnis in das Stammverzeichnis des geklonten Repositorys.

cd code-to-cloud/src

Erstellen einer Azure-Ressourcengruppe

Erstellen Sie eine Ressourcengruppe, um die Dienste im Zusammenhang mit der Bereitstellung Ihrer Container-App zu organisieren.

az group create \
  --name $RESOURCE_GROUP \
  --location "$LOCATION"

Erstellen einer Azure-Containerregistrierung

Nachdem das Album-API-Containerimage erstellt wurde, erstellen Sie eine Azure Container Registry-Instanz (ACR) in Ihrer Ressourcengruppe, um es zu speichern.

az acr create \
  --resource-group $RESOURCE_GROUP \
  --name $ACR_NAME \
  --sku Basic \
  --admin-enabled true

Erstellen Ihrer Anwendung

Mit ACR-Aufgaben können Sie das Docker-Image für die Album-API erstellen und mithilfe von Push zu übertragen, ohne Docker lokal zu installieren.

Erstellen des Containers mit ACR

Führen Sie den folgenden Befehl aus, um den Prozess zur Erstellung und zum Übertragen des Image mithilfe von ACR zu initiieren. Das . am Ende des Befehls stellt den Docker-Build-Kontext dar, was bedeutet, dass dieser Befehl innerhalb des src-Ordners ausgeführt werden sollte, in dem sich die Dockerfile befindet.

az acr build --registry $ACR_NAME --image $API_NAME .

Die Ausgabe aus dem az acr build-Befehl zeigt den Upload-Fortschritt des Quellcodes in Azure und die Details der Vorgänge docker build und docker push.

Erstellen Ihrer Anwendung

Die folgenden Schritte zeigen, wie Sie Ihr Containerimage lokal mithilfe von Docker erstellen und das Image mithilfe von Push an die neue Containerregistrierung übertragen.

Erstellen des Containers mit Docker

Der folgende Befehl erstellt ein Containerimage für die Album-API und markiert es mit dem vollqualifizierten Namen des ACR-Anmeldeservers. Das . am Ende des Befehls stellt den Docker-Build-Kontext dar, was bedeutet, dass dieser Befehl innerhalb des src-Ordners ausgeführt werden sollte, in dem sich die Dockerfile befindet.

docker build --tag $ACR_NAME.azurecr.io/$API_NAME .

Übertragen des Images mithilfe von Push an Ihre Containerregistrierung

Melden Sie sich zuerst bei Ihrer Azure Container Registry an.

az acr login --name $ACR_NAME

Übertragen Sie jetzt das Image mithilfe von Push an Ihre Registrierung.

docker push $ACR_NAME.azurecr.io/$API_NAME

Erstellen einer Container-Apps-Umgebung

Die Azure Container Apps-Umgebung fungiert als eine sichere Grenze, die eine Gruppe von Container-Apps umgibt.

Erstellen Sie die Container-Apps-Umgebung mit dem folgenden Befehl.

az containerapp env create \
  --name $ENVIRONMENT \
  --resource-group $RESOURCE_GROUP \
  --location "$LOCATION"

Bereitstellen Ihres Images in einer Container-App

Nachdem Sie eine Umgebung erstellt haben, können Sie Ihre Container-App mit dem Befehl az containerapp create erstellen und bereitstellen.

Erstellen Sie Ihre Container App mit dem folgenden Befehl und stellen Sie sie bereit.

az containerapp create \
  --name $API_NAME \
  --resource-group $RESOURCE_GROUP \
  --environment $ENVIRONMENT \
  --image $ACR_NAME.azurecr.io/$API_NAME \
  --target-port 8080 \
  --ingress 'external' \
  --registry-server $ACR_NAME.azurecr.io \
  --query properties.configuration.ingress.fqdn
  • Wenn Sie --ingress auf external setzen, ist Ihre Container-App über das öffentliche Internet zugänglich.

  • target-port wird auf 8080 festgelegt, damit es mit dem Port übereinstimmt, an dem der Container auf Anforderungen lauscht.

  • Ohne eine query-Eigenschaft gibt der Aufruf an az containerapp create eine JSON-Antwort zurück, die umfangreiche Details zur Anwendung enthält. Durch das Hinzufügen eines Abfrageparameters wird die Ausgabe auf nur den vollqualifizierten Domänennamen (FQDN) der App gefiltert.

Überprüfen der Bereitstellung

Kopieren Sie den vollqualifizierten Domänennamen in einen Webbrowser. Navigieren Sie im Webbrowser zum Endpunkt /albums des vollqualifizierten Domänennamen.

Screenshot der Antwort vom API-Endpunkt für Alben.

Bereinigen von Ressourcen

Wenn Sie das Tutorial Kommunikation zwischen Microservices nicht fortsetzen möchten, können Sie die Azure-Ressourcen entfernen, die während dieser Schnellstartanleitung erstellt wurden. Führen Sie den folgenden Befehl aus, um die Ressourcengruppe zusammen mit allen in dieser Schnellstartanleitung erstellten Ressourcen zu löschen.

az group delete --name $RESOURCE_GROUP

Tipp

Treten Probleme auf? Informieren Sie uns über GitHub, indem Sie ein Problem im Azure Container Apps-Repository öffnen.

Nächste Schritte

Diese Schnellstartanleitung ist der Einstiegspunkt für eine Reihe aufeinander aufbauender Tutorials, die die verschiedenen Funktionen in Azure Container Apps vorstellen. Fahren Sie fort, um zu erfahren, wie Sie die Kommunikation über ein Web-Front-End aktivieren, das die API aufruft, die Sie in diesem Artikel bereitgestellt haben.