Rychlý start: Vytvoření úlohy v Azure Container Apps

V tomto rychlém startu vytvoříte úlohu Azure Container Apps. V Container Apps se úlohy používají ke spouštění kontejnerizovaných úloh, které běží po omezenou dobu trvání a pak se ukončí. Úlohy jsou nejvhodnější pro úlohy, jako je zpracování dat, strojové učení, vyčištění prostředků nebo jakýkoli scénář, který vyžaduje zpracování na vyžádání.

Úlohu můžete aktivovat ručně, naplánovat její spuštění nebo spustit na základě událostí. V tomto rychlém startu se dozvíte, jak vytvořit ruční nebo naplánovanou úlohu. Pokud chcete zjistit, jak vytvořit úlohu řízenou událostmi, přečtěte si téma Nasazení úlohy řízené událostmi pomocí Azure Container Apps.

Požadavky

Informace o funkcích, které úlohy Container Apps nepodporují, najdete v tématu Omezení úloh.

Příprava prostředí

  1. Pokud se chcete přihlásit k Azure z Azure CLI, spusťte následující příkaz a podle pokynů dokončete proces ověřování.

    az login
    
  2. Pomocí příkazu se ujistěte, že používáte nejnovější verzi Azure CLI az upgrade .

    az upgrade
    
  3. Nainstalujte nejnovější verzi rozšíření Rozhraní příkazového řádku Container Apps.

    az extension add --name containerapp --upgrade
    
  4. Zaregistrujte obory názvů Microsoft.App, Microsoft.OperationalInsights a Microsoft.Storage, pokud ještě nejsou zaregistrované ve vašem předplatném Azure.

    az provider register --namespace Microsoft.App
    az provider register --namespace Microsoft.OperationalInsights
    az provider register --namespace Microsoft.Storage
    
  5. Definujte proměnné prostředí, které se používají v tomto článku.

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

Vytvoření prostředí Container Apps

Prostředí Container Apps funguje jako hranice izolace kolem kontejnerových aplikací a úloh, aby mohly sdílet stejnou síť a komunikovat mezi sebou.

  1. Pomocí následujícího příkazu vytvořte skupinu prostředků.

    az group create \
        --name "$RESOURCE_GROUP" \
        --location "$LOCATION"
    
  2. Pomocí následujícího příkazu vytvořte prostředí Container Apps.

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

Vytvoření a spuštění ruční úlohy

Pokud chcete použít ruční úlohy, nejprve vytvoříte úlohu s typem triggeru Manual a pak spustíte její spuštění. Můžete spustit více spuštění stejné úlohy a současně spustit více spuštění úloh.

  1. Pomocí následujícího příkazu vytvořte úlohu v prostředí Container Apps.

    az containerapp job create \
        --name "$JOB_NAME" --resource-group "$RESOURCE_GROUP"  --environment "$ENVIRONMENT" \
        --trigger-type "Manual" \
        --replica-timeout 1800 \
        --replica-retry-limit 1 \
        --image "mcr.microsoft.com/k8se/quickstart-jobs:latest" \
        --cpu "0.25" --memory "0.5Gi"
    

    Ruční úlohy se nespouštějí automaticky. Musíte zahájit každou úlohu.

  2. Spusťte úlohu pomocí následujícího příkazu.

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

    Příkaz vrátí podrobné informace o spuštění úlohy, včetně jeho názvu.

Vytvoření a spuštění naplánované úlohy

Pokud chcete použít naplánované úlohy, vytvoříte úlohu s typem triggeru Schedule a výrazem cron , který definuje plán.

Pomocí následujícího příkazu vytvořte úlohu Container Apps, která se spustí každou minutu.

az containerapp job create \
    --name "$JOB_NAME" --resource-group "$RESOURCE_GROUP"  --environment "$ENVIRONMENT" \
    --trigger-type "Schedule" \
    --replica-timeout 1800 \
    --replica-retry-limit 1 \
    --image "mcr.microsoft.com/k8se/quickstart-jobs:latest" \
    --cpu "0.25" --memory "0.5Gi" \
    --cron-expression "*/1 * * * *"

Úlohy se spustí automaticky podle plánu.

Úlohy Container Apps používají cron výrazy k definování plánů. Úlohy podporují standardní formát výrazu cron , který obsahuje pole pro minutu, hodinu, den v měsíci, měsíc a den v týdnu.

Zobrazit historii nedávných spuštění úloh

Úlohy Container Apps udržují historii posledních spuštění. Můžete zobrazit seznam spuštění úlohy.

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

Úlohy se zobrazí v seznamu při jejich spuštění.

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

Dotazování protokolů spuštění úlohy

Úloha zapisuje výstupní protokoly do zprostředkovatele protokolování, kterého nakonfigurujete pro prostředí Container Apps. Ve výchozím nastavení se protokoly ukládají do Log Analytics.

  1. Uložte ID pracovního prostoru služby Log Analytics pro prostředí Container Apps do proměnné.

    LOG_ANALYTICS_WORKSPACE_ID=$(az containerapp env show \
        --name "$ENVIRONMENT" \
        --resource-group "$RESOURCE_GROUP" \
        --query "properties.appLogsConfiguration.logAnalyticsConfiguration.customerId" \
        --output tsv)
    
  2. Uložte název nejnovější spuštěné úlohy do proměnné.

    JOB_RUN_NAME=$(az containerapp job execution list \
        --name "$JOB_NAME" \
        --resource-group "$RESOURCE_GROUP" \
        --query "[0].name" \
        --output tsv)
    
  3. Spuštěním následujícího příkazu spusťte dotaz Log Analytics pro úlohu.

    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"
    

    Poznámka:

    Dokud nebude tabulka ContainerAppConsoleLogs_CL připravená, příkaz nevrátí žádné výsledky nebo vrátí následující chybu: BadArgumentError: Požadavek měl některé neplatné vlastnosti. V obou případech počkejte několik minut a pak příkaz spusťte znovu.

    Následující výstup je příkladem protokolů vytištěných spuštěním úlohy.

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

Vyčištění prostředků

Pokud tuto úlohu nebudete dál používat, spuštěním následujícího příkazu odstraňte skupinu prostředků a všechny prostředky z tohoto rychlého startu.

Upozornění

Následující příkaz odstraní zadanou skupinu prostředků a všechny prostředky obsažené v ní. Pokud prostředky mimo rozsah tohoto rychlého startu existují v zadané skupině prostředků, odstraní se také.

az group delete --name "$RESOURCE_GROUP"

Tip

Máte problémy? Dejte nám vědět na GitHubu otevřením problému v úložišti Azure Container Apps.

Další krok