Dela via


Snabbstart: Skapa ett jobb i Azure Container Apps

I den här snabbstarten skapar du ett Azure Container Apps-jobb. I Container Apps används jobb för att starta containerbaserade uppgifter som körs under en begränsad tid och sedan avslutas. Jobb passar bäst för uppgifter som databehandling, maskininlärning, resursrensning eller alla scenarier som kräver bearbetning på begäran.

Du kan utlösa ett jobb manuellt, schemalägga körningen eller utlösa körningen baserat på händelser. Den här snabbstarten visar hur du skapar ett manuellt eller schemalagt jobb. Information om hur du skapar ett händelsedrivet jobb finns i Distribuera ett händelsedrivet jobb med Azure Container Apps.

Förutsättningar

Information om funktioner som Container Apps-jobb inte stöder finns i Jobbbegränsningar.

Förbereda miljön

  1. Om du vill logga in på Azure från Azure CLI kör du följande kommando och följer anvisningarna för att slutföra autentiseringsprocessen.

    az login
    
  2. Kontrollera att du kör den senaste versionen av Azure CLI via az upgrade kommandot .

    az upgrade
    
  3. Installera den senaste versionen av CLI-tillägget för Container Apps.

    az extension add --name containerapp --upgrade
    
  4. Microsoft.AppRegistrera namnrymderna , Microsoft.OperationalInsightsoch Microsoft.Storage om de inte redan är registrerade i din Azure-prenumeration.

    az provider register --namespace Microsoft.App
    az provider register --namespace Microsoft.OperationalInsights
    az provider register --namespace Microsoft.Storage
    
  5. Definiera de miljövariabler som används i hela den här artikeln.

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

Skapa en Container Apps-miljö

Container Apps-miljön fungerar som en isoleringsgräns runt containerappar och jobb så att de kan dela samma nätverk och kommunicera med varandra.

  1. Skapa en resursgrupp med hjälp av följande kommando.

    az group create \
        --name "$RESOURCE_GROUP" \
        --location "$LOCATION"
    
  2. Skapa Container Apps-miljön med hjälp av följande kommando.

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

Skapa och köra ett manuellt jobb

För att använda manuella jobb skapar du först ett jobb med en utlösartyp av Manual och startar sedan körningen. Du kan starta flera omgångar av samma uppgift, och flera uppgiftskörningar kan köras samtidigt.

  1. Skapa ett jobb i Container Apps-miljön med hjälp av följande kommando.

    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"
    

    Manuella jobb körs inte automatiskt. Du måste starta varje jobb.

  2. Starta jobbet med hjälp av följande kommando.

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

    Kommandot returnerar detaljerad information om jobbkörningen, inklusive dess namn.

Skapa och köra ett schemalagt jobb

Om du vill använda schemalagda jobb skapar du ett jobb med en utlösartyp av Schedule och ett cron uttryck som definierar schemat.

Använd följande kommando för att skapa ett Container Apps-jobb som startar varje minut.

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

Jobbet körs automatiskt baserat på schemat.

Container Apps-jobb använder cron uttryck för att definiera scheman. Jobb stöder standarduttrycksformatet cron , som innehåller fält för minut, timme, dag i månaden, månad och veckodag.

Visa en lista över senaste jobbkörningshistorik

Container Apps-jobb har en historik över de senaste körningarna. Du kan visa en lista över körningar av ett jobb.

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

Jobb visas i listan när de körs.

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

Kör loggar för frågejobb

Jobbet kör skrivutdataloggar till loggningsprovidern som du konfigurerar för Container Apps-miljön. Som standard lagras loggar i Log Analytics.

  1. Spara Log Analytics-arbetsytans ID för Container Apps-miljön till en variabel.

    LOG_ANALYTICS_WORKSPACE_ID=$(az containerapp env show \
        --name "$ENVIRONMENT" \
        --resource-group "$RESOURCE_GROUP" \
        --query "properties.appLogsConfiguration.logAnalyticsConfiguration.customerId" \
        --output tsv)
    
  2. Spara namnet på den senaste jobbkörningen till en variabel.

    JOB_RUN_NAME=$(az containerapp job execution list \
        --name "$JOB_NAME" \
        --resource-group "$RESOURCE_GROUP" \
        --query "[0].name" \
        --output tsv)
    
  3. Kör en Log Analytics-fråga för jobbet som körs med hjälp av följande kommando.

    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"
    

    Kommentar

    Tills tabellen ContainerAppConsoleLogs_CL är klar returnerar kommandot inga resultat, eller så returneras följande fel: "BadArgumentError: Begäran hade några ogiltiga egenskaper." I båda fallen väntar du några minuter och kör sedan kommandot igen.

    Följande utdata är ett exempel på loggarna som skrivs ut av jobbkörningen.

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

Rensa resurser

Om du inte fortsätter att använda det här jobbet kör du följande kommando för att ta bort resursgruppen och alla resurser från den här snabbstarten.

Varning

Följande kommando tar bort den angivna resursgruppen och alla resurser som ingår i den. Om det finns resurser utanför omfånget för den här snabbstarten i den angivna resursgruppen tas de också bort.

az group delete --name "$RESOURCE_GROUP"

Dricks

Har du problem? Meddela oss på GitHub genom att öppna ett problem i Azure Container Apps-lagringsplatsen.

Nästa steg