Delen via


Quickstart: Een taak maken in Azure Container Apps

In deze quickstart maakt u een Azure Container Apps taak. In Container Apps worden jobs gebruikt om containertaken te starten die worden uitgevoerd voor een beperkte tijd en daarna stoppen. Jobs zijn het meest geschikt voor taken zoals gegevensverwerking, machine learning, het opschonen van resources of scenario's waarvoor verwerking op afroep vereist is.

U kunt een taak handmatig activeren, de uitvoering plannen of de uitvoering activeren op basis van gebeurtenissen. In deze quickstart ziet u hoe u een handmatige of geplande taak maakt. Zie Een gebeurtenisgestuurde taak implementeren met Azure Container Apps voor meer informatie over het maken van een gebeurtenisgestuurde taak.

Vereisten

Zie Takenbeperkingen voor informatie over functies die Container Apps-taken niet ondersteunen.

De omgeving voorbereiden

  1. Als u zich wilt aanmelden bij Azure vanuit de Azure CLI, voert u de volgende opdracht uit en volgt u de aanwijzingen om het verificatieproces te voltooien.

    az login
    
  2. Zorg ervoor dat u de nieuwste versie van de Azure CLI uitvoert via de az upgrade opdracht.

    az upgrade
    
  3. Installeer de nieuwste versie van de Container Apps CLI-extensie.

    az extension add --name containerapp --upgrade
    
  4. Registreer de Microsoft.App, Microsoft.OperationalInsightsen Microsoft.Storage naamruimten als ze nog niet zijn geregistreerd in uw Azure-abonnement.

    az provider register --namespace Microsoft.App
    az provider register --namespace Microsoft.OperationalInsights
    az provider register --namespace Microsoft.Storage
    
  5. Definieer de omgevingsvariabelen die in dit artikel worden gebruikt.

    RESOURCE_GROUP="jobs-quickstart"
    LOCATION="northcentralus"
    ENVIRONMENT="env-jobs-quickstart"
    JOB_NAME="my-job"
    

Een Container Apps-omgeving maken

De Container Apps-omgeving fungeert als een isolatiegrens rond container-apps en -taken, zodat ze hetzelfde netwerk kunnen delen en met elkaar kunnen communiceren.

  1. Maak een resourcegroep met behulp van de volgende opdracht.

    az group create \
        --name "$RESOURCE_GROUP" \
        --location "$LOCATION"
    
  2. Maak de Container Apps-omgeving met behulp van de volgende opdracht.

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

Een handmatige taak maken en uitvoeren

Als u handmatige taken wilt gebruiken, maakt u eerst een taak met een triggertype Manual en start u vervolgens de uitvoering. U kunt meerdere uitvoeringen van dezelfde taak starten en meerdere taakuitvoeringen kunnen gelijktijdig worden uitgevoerd.

  1. Maak een taak in de Container Apps-omgeving met behulp van de volgende opdracht.

    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"
    

    Handmatige taken worden niet automatisch uitgevoerd. U moet elke taak starten.

  2. Start de taak met behulp van de volgende opdracht.

    az containerapp job start \
        --name "$JOB_NAME" \
        --resource-group "$RESOURCE_GROUP"
    

    De opdracht retourneert gedetailleerde informatie over de taakuitvoering, inclusief de naam.

Een geplande taak maken en uitvoeren

Als u geplande taken wilt gebruiken, maakt u een taak met een triggertype Schedule en een cron expressie die het schema definieert.

Gebruik de volgende opdracht om een Container Apps-taak te maken die elke minuut wordt gestart.

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 * * * *"

De taakuitvoering start automatisch op basis van de planning.

Container Apps-opdrachten gebruiken cron-expressies om planningen te definiƫren. Taken ondersteunen de standaardindeling voor cron-expressies , die velden bevat voor de minuut, het uur, de dag van de maand, de maand en de dag van de week.

Recente uitvoeringsgeschiedenis van taken weergeven

Container Apps-taken behouden een historie van recente uitvoeringen. U kunt de uitvoeringen van een taak weergeven.

az containerapp job execution list \
    --name "$JOB_NAME" \
    --resource-group "$RESOURCE_GROUP" \
    --output table \
    --query '[].{Status: properties.status, Name: name, StartTime: properties.startTime}'

Taken verschijnen op de lijst terwijl ze worden uitgevoerd.

Status     Name            StartTime
---------  --------------  -------------------------
Succeeded  my-job-jvsgub6  2025-11-17T21:21:45+00:00

Opvragen van uitvoeringslogboeken van taken

Taakuitvoeringen schrijven uitvoerlogboeken naar de logboekprovider die u configureert voor de Container Apps-omgeving. Logboeken worden standaard opgeslagen in Log Analytics.

  1. Sla de Log Analytics-werkruimte-id voor de Container Apps-omgeving op in een variabele.

    LOG_ANALYTICS_WORKSPACE_ID=$(az containerapp env show \
        --name "$ENVIRONMENT" \
        --resource-group "$RESOURCE_GROUP" \
        --query "properties.appLogsConfiguration.logAnalyticsConfiguration.customerId" \
        --output tsv)
    
  2. Sla de naam van de meest recente taakuitvoering op in een variabele.

    JOB_RUN_NAME=$(az containerapp job execution list \
        --name "$JOB_NAME" \
        --resource-group "$RESOURCE_GROUP" \
        --query "[0].name" \
        --output tsv)
    
  3. Voer een Log Analytics-query uit voor de taak die wordt uitgevoerd met behulp van de volgende opdracht.

    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"
    

    Notitie

    Totdat de ContainerAppConsoleLogs_CL tabel gereed is, retourneert de opdracht geen resultaten of retourneert deze de volgende fout: 'BadArgumentError: De aanvraag had een aantal ongeldige eigenschappen.' Wacht in beide gevallen enkele minuten en voer de opdracht opnieuw uit.

    De volgende uitvoer is een voorbeeld van de logs die door de taak worden gegenereerd.

    [
        "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!"
    ]
    

Resources opschonen

Als u deze taak niet wilt blijven gebruiken, voert u de volgende opdracht uit om de resourcegroep en alle resources uit deze quickstart te verwijderen.

Let op

Met de volgende opdracht verwijdert u de opgegeven resourcegroep en alle resources erin. Als resources buiten het bereik van deze quickstart aanwezig zijn in de opgegeven resourcegroep, worden ze ook verwijderd.

az group delete --name "$RESOURCE_GROUP"

Tip

Ondervindt u problemen? Laat het ons weten op GitHub door een probleem te openen in de Azure Container Apps-opslagplaats.

Volgende stap