Modifica della definizione di un'ECSattività Amazon - Amazon CodeCatalyst

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Modifica della definizione di un'ECSattività Amazon

Questa sezione descrive come aggiornare il image campo in un file di definizione delle attività di Amazon Elastic Container Service (AmazonECS) utilizzando un CodeCatalyst flusso di lavoro. A tale scopo, devi aggiungere l'azione Render Amazon ECS task definition al tuo flusso di lavoro. Questa azione aggiorna il campo immagine nel file di definizione dell'attività con un nome di immagine Docker fornito dal flusso di lavoro in fase di esecuzione.

Nota

È inoltre possibile utilizzare questa azione per aggiornare il environment campo della definizione dell'attività con variabili di ambiente.

Quando usare questa azione

Usala se disponi di un flusso di lavoro che crea e contrassegna un'immagine Docker con contenuti dinamici, come un ID di commit o un timestamp.

Non utilizzare questa azione se il file di definizione dell'attività contiene un valore di immagine che rimane sempre lo stesso. In questo caso, puoi inserire manualmente il nome dell'immagine nel file di definizione dell'attività.

Come funziona l'azione «Render Amazon ECS task definition»

È necessario utilizzare l'azione Render Amazon ECS task definition con le ECS azioni Build and Deploy to Amazon nel flusso di lavoro. Insieme, queste azioni funzionano come segue:

  1. L'azione di compilazione crea l'immagine Docker e la contrassegna con un nome, un ID di commit, un timestamp o altri contenuti dinamici. Ad esempio, l'azione di compilazione potrebbe essere simile alla seguente:

    MyECSWorkflow Actions: BuildAction: Identifier: aws/build@v1 ... Configuration: Steps: # Build, tag, and push the Docker image... - Run: docker build -t MyDockerImage:${WorkflowSource.CommitId} . ...

    Nel codice precedente, la docker build -t direttiva indica di creare l'immagine Docker e di etichettarla con l'ID di commit in fase di esecuzione dell'azione. Il nome dell'immagine generata potrebbe essere simile al seguente:

    MyDockerImage:a37bd7e

  2. L'azione Render Amazon ECS task definition aggiunge il nome dell'immagine generato dinamicamente al file di definizione dell'attività, in questo modo: MyDockerImage:a37bd7e

    { "executionRoleArn": "arn:aws:iam::account_ID:role/codecatalyst-ecs-task-execution-role", "containerDefinitions": [ { "name": "codecatalyst-ecs-container", "image": MyDockerImage:a37bd7e, "essential": true, ... "portMappings": [ { "hostPort": 80, "protocol": "tcp", "containerPort": 80 } ] } ], ... }

    Facoltativamente, puoi anche fare in modo che l'azione Render Amazon di definizione dell'ECSattività aggiunga variabili di ambiente alla definizione dell'attività, in questo modo:

    { "executionRoleArn": "arn:aws:iam::account_ID:role/codecatalyst-ecs-task-execution-role", "containerDefinitions": [ { "name": "codecatalyst-ecs-container", "image": MyDockerImage:a37bd7e, ... "environment": [ { name": "ECS_LOGLEVEL", value": "info" } ] } ], ... }

    Per ulteriori informazioni sulle variabili di ambiente, consulta Specificare le variabili di ambiente nella Amazon Elastic Container Service Developer Guide.

  3. L'ECSazione Deploy to Amazon registra il file di definizione dell'attività aggiornato con Amazon. ECS La registrazione del file di definizione delle attività aggiornato distribuisce la nuova immagine in MyDockerImage:a37bd7e Amazon. ECS

Immagine di runtime utilizzata dall'azione «Render Amazon ECS task definition»

L'azione di definizione dell'ECSattività Render Amazon viene eseguita su un'immagine di novembre 2022. Per ulteriori informazioni, consulta Immagini attive.