Schnellstart: Erstellen und Bereitstellen in Azure Container Apps aus lokalem Quellcode
In diesem Artikel wird veranschaulicht, wie Sie mithilfe der Programmiersprache Ihrer Wahl einen Microservice in Azure Container Apps aus lokalem Quellcode erstellen und bereitstellen. In dieser Schnellstartanleitung erstellen Sie einen Back-End-Web-API-Dienst, der eine statische Sammlung von Musikalben zurückgibt.
Hinweis
Diese Beispielanwendung ist in zwei Versionen verfügbar. Eine Version enthält eine Dockerfile-Datei in der Quelle. Die andere Version enthält keine Dockerfile-Datei. Wählen Sie die Version aus, die am besten für Ihren Quellcode geeignet ist. Wenn Sie noch nicht mit Containern arbeiten, wählen Sie oben die Option Kein Dockerfile aus.
Der folgende Screenshot zeigt die Ausgabe des Album-API-Dienstes, den Sie bereitstellen.
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. |
Azure CLI | Installieren Sie die Azure CLI. |
Einrichten
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.
Falls Sie Fehler aufgrund fehlender Parameter erhalten, wenn Sie az containerapp
-Befehle in der Azure CLI oder Cmdlets aus dem Az.App
-Modul in Azure PowerShell ausführen, stellen Sie sicher, dass die aktuelle Version der Azure Container Apps-Erweiterung installiert ist.
az extension add --name containerapp --upgrade
Hinweis
Ab Mai 2024 aktivieren Azure CLI-Erweiterungen standardmäßig keine Previewfunktionen mehr. Um auf Previewfunktionen von Container Apps zuzugreifen, installieren Sie die Container Apps-Erweiterung mit --allow-preview true
.
az extension add --name containerapp --upgrade --allow-preview true
Nachdem die aktuelle Erweiterung oder das aktuelle Modul installiert ist, registrieren Sie nun die Namespaces Microsoft.App
und Microsoft.OperationalInsights
.
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.
export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"
Beispielcode herunterladen
Laden Sie die API-Beispielanwendung in der von Ihnen gewählten Sprache herunter, und extrahieren Sie diese.
Laden Sie den Quellcode auf Ihren Computer herunter.
Extrahieren Sie den Download, und wechseln Sie in den Ordner containerapps-albumapi-csharp-main/src.
Laden Sie den Quellcode auf Ihren Computer herunter.
Extrahieren Sie den Download, und wechseln Sie in den Ordner containerapps-albumapi-csharp-buildpack/src.
Erstellen und Bereitstellen der Container-App
Erstellen Sie mithilfe des containerapp up
-Befehls Ihre erste Container-App, und stellen Sie diese bereit. Dieser Befehl bewirkt Folgendes:
- Ressourcengruppe erstellen
- Erstellen einer Azure-Containerregistrierung
- Erstellen des Containerimages und Pushen an die Registrierung
- Erstellen der Container Apps-Umgebung mit einem Log Analytics-Arbeitsbereich
- Erstellen und Bereitstellen der Container-App mithilfe des erstellten Containerimages
- Erstellen der Ressourcengruppe
- Erstellen einer Standardregistrierung als Teil Ihrer Umgebung
- Ermitteln der Sprache und Runtime Ihrer Anwendung und Erstellen des Images mithilfe des entsprechenden Buildpacks
- Übertragen des Images in die Standardregistrierung von Azure Container Apps mithilfe von Push
- Erstellen der Container Apps-Umgebung mit einem Log Analytics-Arbeitsbereich
- Erstellen und Bereitstellen der Container-App mithilfe des erstellten Containerimages
Der up
-Befehl verwendet die Dockerfile-Datei im Stammverzeichnis des Repositorys, um das Containerimage zu erstellen. Die EXPOSE
-Anweisung in der Dockerfile-Datei definiert den Zielport, der zum Senden des eingehenden Datenverkehrs an den Container verwendet wird.
Wenn der up
-Befehl keine Dockerfile-Datei findet, verwendet er automatisch Buildpacks, um die Anwendungsquelle in einen ausführbaren Container umzuwandeln. Da das Buildpack versucht, den Build in Ihrem Auftrag auszuführen, müssen Sie dem up
-Befehl mitteilen, an welchen Port der eingehende Datenverkehr gesendet werden soll.
Im folgenden Codebeispiel weist der Punkt (.
) den containerapp up
-Befehl an, dass die Ausführung im aktuellen Verzeichnis der extrahierten Anwendung der Beispiel-API erfolgen soll.
az containerapp up \
--name $API_NAME \
--location $LOCATION \
--environment $ENVIRONMENT \
--source .
az containerapp up \
--name $API_NAME \
--location $LOCATION \
--environment $ENVIRONMENT \
--ingress external \
--target-port 8080 \
--source .
Wichtig
Um Ihre Container-App in einer vorhandenen Ressourcengruppe bereitzustellen, fügen Sie --resource-group yourResourceGroup
zum Befehl containerapp up
hinzu.
Überprüfen der Bereitstellung
Kopieren Sie den vollqualifizierten Domänennamen in einen Webbrowser. Navigieren Sie im Webbrowser zum Endpunkt /albums
des vollqualifizierten Domänennamens.
Grenzwerte
Die maximale Größe für das Hochladen von Quellcode beträgt 200 MB. Wenn der Upload das Limit überschreitet, wird Fehler 413 zurückgegeben.
Bereinigen von Ressourcen
Wenn Sie nicht mit dem Tutorial Bereitstellen eines Front-Ends fortfahren möchten, können Sie die Azure-Ressourcen, die in dieser Schnellstartanleitung erstellt wurden, mit dem folgenden Befehl entfernen.
Achtung
Mit dem folgenden Befehl werden die angegebene Ressourcengruppe und alle darin enthaltenen Ressourcen gelöscht. Wenn die Gruppe Ressourcen außerhalb des Bereichs dieser Schnellstartanleitung enthält, werden diese ebenfalls gelöscht.
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
Nach Abschluss dieser Schnellstartanleitung können Sie mit Tutorial: Kommunikation zwischen Microservices in Azure Container Apps fortfahren, um zu erfahren, wie Sie eine Front-End-Anwendung bereitstellen, die die API aufruft.