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.
In dieser Schnellstartanleitung erstellen Sie einen Azure-Container-Apps-Auftrag. In Container-Apps werden Aufträge verwendet, um containerisierte Aufgaben zu starten, die für eine begrenzte Dauer ausgeführt werden und dann beendet werden. Aufträge eignen sich am besten für Aufgaben wie Datenverarbeitung, Maschinelles Lernen, Ressourcenbereinigung oder jedes Szenario, das eine On-Demand-Verarbeitung erfordert.
Sie können einen Auftrag manuell auslösen, seine Ausführung planen oder die Ausführung basierend auf Ereignissen auslösen. In dieser Schnellstartanleitung erfahren Sie, wie Sie einen manuellen oder geplanten Auftrag erstellen. Informationen zum Erstellen eines ereignisgesteuerten Auftrags finden Sie unter Bereitstellen eines ereignisgesteuerten Auftrags mit Azure-Container-Apps.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Falls Sie keins haben, können Sie kostenlos eins erstellen.
- Die Azure CLI
Informationen zu Features, die Container-Apps-Aufträge nicht unterstützen, finden Sie unter Auftragseinschränkungen.
Vorbereiten der Umgebung
Um sich über die Azure CLI bei Azure anzumelden, führen Sie den folgenden Befehl aus, und folgen Sie den Anweisungen, um den Authentifizierungsprozess abzuschließen.
az loginStellen Sie sicher, dass Sie die neueste Version der Azure CLI über den
az upgradeBefehl ausführen.az upgradeInstallieren Sie die neueste Version der Container Apps CLI-Erweiterung.
az extension add --name containerapp --upgradeRegistrieren Sie die Namespaces
Microsoft.App,Microsoft.OperationalInsightsundMicrosoft.Storage, wenn sie noch nicht in Ihrem Azure-Abonnement registriert sind.az provider register --namespace Microsoft.App az provider register --namespace Microsoft.OperationalInsights az provider register --namespace Microsoft.StorageDefinieren Sie die Umgebungsvariablen, die in diesem Artikel verwendet werden.
RESOURCE_GROUP="jobs-quickstart" LOCATION="northcentralus" ENVIRONMENT="env-jobs-quickstart" JOB_NAME="my-job"
Erstellen einer Container-Apps-Umgebung
Die Container-Apps-Umgebung fungiert als Isolationsgrenze für Container-Apps und -Aufträge, sodass sie dasselbe Netzwerk gemeinsam nutzen und miteinander kommunizieren können.
Erstellen Sie mit dem folgenden Befehl eine Ressourcengruppe.
az group create \ --name "$RESOURCE_GROUP" \ --location "$LOCATION"Erstellen Sie die Container-Apps-Umgebung mithilfe des folgenden Befehls.
az containerapp env create \ --name "$ENVIRONMENT" \ --resource-group "$RESOURCE_GROUP" \ --location "$LOCATION"
Erstellen und Ausführen eines manuellen Auftrags
Um manuelle Aufträge zu verwenden, erstellen Sie zuerst einen Auftrag mit einem Triggertyp von Manual und starten dann die Ausführung. Sie können mehrere Ausführungen desselben Auftrags starten, und mehrere Auftragsausführungen können gleichzeitig ausgeführt werden.
Erstellen Sie einen Auftrag in der Container-Apps-Umgebung mithilfe des folgenden Befehls.
az containerapp job create \ --name "$JOB_NAME" --resource-group "$RESOURCE_GROUP" --environment "$ENVIRONMENT" \ --trigger-type "Manual" \ --replica-timeout 1800 \ --image "mcr.microsoft.com/k8se/quickstart-jobs:latest" \ --cpu "0.25" --memory "0.5Gi"Manuelle Aufträge werden nicht automatisch ausgeführt. Sie müssen jeden Auftrag starten.
Starten Sie den Auftrag mithilfe des folgenden Befehls.
az containerapp job start \ --name "$JOB_NAME" \ --resource-group "$RESOURCE_GROUP"Der Befehl gibt detaillierte Informationen zur Ausführung des Auftrags einschließlich seines Namens zurück.
Erstellen und Ausführen eines geplanten Auftrags
Um geplante Aufträge zu verwenden, erstellen Sie einen Auftrag mit einem Triggertyp Schedule und einem cron Ausdruck, der den Zeitplan definiert.
Verwenden Sie den folgenden Befehl, um einen Container-Apps-Auftrag zu erstellen, der jede Minute beginnt.
az containerapp job create \
--name "$JOB_NAME" --resource-group "$RESOURCE_GROUP" --environment "$ENVIRONMENT" \
--trigger-type "Schedule" \
--replica-timeout 1800 \
--image "mcr.microsoft.com/k8se/quickstart-jobs:latest" \
--cpu "0.25" --memory "0.5Gi" \
--cron-expression "*/1 * * * *"
Die Jobläufe starten automatisch basierend auf dem Zeitplan.
Container-Apps-Aufträge verwenden cron Ausdrücke zum Definieren von Zeitplänen. Aufträge unterstützen das standardmäßige Cron-Ausdrucksformat, das Felder für Minute, Stunde, Tag des Monats, Monat und Wochentag enthält.
Aktuellen Auftragsausführungsverlauf auflisten
Container Apps-Aufträge verwalten einen Verlauf der letzten Durchläufe. Sie können die Durchläufe eines Auftrags auflisten.
az containerapp job execution list \
--name "$JOB_NAME" \
--resource-group "$RESOURCE_GROUP" \
--output table \
--query '[].{Status: properties.status, Name: name, StartTime: properties.startTime}'
Aufträge werden während der Ausführung in der Liste angezeigt.
Status Name StartTime
--------- -------------- -------------------------
Succeeded my-job-jvsgub6 2025-11-17T21:21:45+00:00
Protokolle der Ausführung von Abfrageaufträgen
Auftragsdurchläufe schreiben Ausgabeprotokolle an den Protokollierungsanbieter, den Sie für die Container Apps-Umgebung konfiguriert haben. Standardmäßig werden Protokolle in Log Analytics gespeichert.
Speichern Sie die Log Analytics-Arbeitsbereichs-ID für die Container Apps-Umgebung in einer Variablen.
LOG_ANALYTICS_WORKSPACE_ID=$(az containerapp env show \ --name "$ENVIRONMENT" \ --resource-group "$RESOURCE_GROUP" \ --query "properties.appLogsConfiguration.logAnalyticsConfiguration.customerId" \ --output tsv)Speichern Sie den Namen des zuletzt ausgeführten Auftrags in einer Variablen.
JOB_RUN_NAME=$(az containerapp job execution list \ --name "$JOB_NAME" \ --resource-group "$RESOURCE_GROUP" \ --query "[0].name" \ --output tsv)Führen Sie eine Log Analytics-Abfrage für den Auftrag aus, der mit dem folgenden Befehl ausgeführt wird.
az monitor log-analytics query \ --workspace "$LOG_ANALYTICS_WORKSPACE_ID" \ --analytics-query "ContainerAppConsoleLogs_CL | where ContainerGroupName_s startswith '$JOB_RUN_NAME' | order by _timestamp_d asc" \ --query "[].Log_s"Hinweis
Bis die ContainerAppConsoleLogs_CL Tabelle bereit ist, gibt der Befehl keine Ergebnisse zurück oder gibt den folgenden Fehler zurück: "BadArgumentError: Die Anforderung hatte einige ungültige Eigenschaften." Warten Sie in beiden Fällen einige Minuten, und führen Sie dann den Befehl erneut aus.
Die folgende Ausgabe ist ein Beispiel für die Protokolle, die von dem Auftragsdurchlauf ausgegeben werden.
[ "2025/11/17 18:38:28 This is a sample application that demonstrates how to use Azure Container Apps jobs", "2025/11/17 18:38:28 Starting processing...", "2025/11/17 18:38:33 Finished processing. Shutting down!" ]
Bereinigen von Ressourcen
Wenn Sie diesen Auftrag nicht weiterhin verwenden werden, führen Sie den folgenden Befehl aus, um die Ressourcengruppe und alle Ressourcen aus dieser Schnellstartanleitung zu löschen.
Vorsicht
Mit dem folgenden Befehl werden die angegebene Ressourcengruppe und alle darin enthaltenen Ressourcen gelöscht. Wenn Ressourcen außerhalb des Bereichs dieser Schnellstartanleitung in der angegebenen Ressourcengruppe vorhanden sind, werden sie 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.