

Amazon CodeCatalyst tidak lagi terbuka untuk pelanggan baru. Pelanggan yang sudah ada dapat terus menggunakan layanan ini seperti biasa. Lihat informasi yang lebih lengkap di [Cara bermigrasi dari CodeCatalyst](migration.md).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Memodifikasi definisi tugas Amazon ECS
<a name="render-ecs-action"></a>

Bagian ini menjelaskan cara memperbarui `image` bidang dalam file [definisi tugas Amazon Elastic Container Service (Amazon ECS) Elastic Container Service (Amazon ECS)](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html#welcome-task-definitions) menggunakan alur kerja. CodeCatalyst Untuk mencapai ini, Anda harus menambahkan tindakan **definisi tugas Render Amazon ECS** ke alur kerja Anda. Tindakan ini memperbarui bidang gambar dalam file definisi tugas dengan nama gambar Docker yang disediakan oleh alur kerja Anda saat runtime.

**catatan**  
Anda juga dapat menggunakan tindakan ini untuk memperbarui `environment` bidang definisi tugas dengan variabel lingkungan.

**Topics**
+ [Kapan menggunakan tindakan ini](#render-ecs-action-when-to-use)
+ [Cara kerja tindakan 'Render Amazon ECS task definition'](#render-ecs-action-how-it-works)
+ [Gambar runtime yang digunakan oleh tindakan 'Render Amazon ECS task definition'](#render-ecs-action-runtime)
+ [Contoh: Memodifikasi taskdef Amazon ECS](render-ecs-action-example-workflow.md)
+ [Menambahkan tindakan 'Render Amazon ECS task definition'](render-ecs-action-add.md)
+ [Melihat file definisi tugas yang diperbarui](render-ecs-action-view.md)
+ [Variabel 'Render definisi tugas Amazon ECS'](render-ecs-action-variables.md)
+ [Tindakan 'Render definisi tugas Amazon ECS' YAMAL](render-ecs-action-ref.md)

## Kapan menggunakan tindakan ini
<a name="render-ecs-action-when-to-use"></a>

Gunakan ini jika Anda memiliki alur kerja yang membangun dan menandai image Docker dengan konten dinamis, seperti ID komit atau stempel waktu. 

Jangan gunakan tindakan ini jika file definisi tugas Anda berisi nilai gambar yang selalu tetap sama. Dalam hal ini, Anda dapat memasukkan nama gambar Anda secara manual ke dalam file definisi tugas.

## Cara kerja tindakan 'Render Amazon ECS task definition'
<a name="render-ecs-action-how-it-works"></a>

Anda harus menggunakan tindakan **definisi tugas Render Amazon ECS** dengan tindakan **build** dan **Deploy ke Amazon ECS** di alur kerja Anda. Bersama-sama, tindakan ini bekerja sebagai berikut:

1. Tindakan **build membangun** image Docker Anda dan menandainya dengan nama, ID komit, stempel waktu, atau konten dinamis lainnya. Misalnya, tindakan build Anda mungkin terlihat seperti ini:

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

   Dalam kode sebelumnya, `docker build -t` arahan menunjukkan untuk membangun image Docker dan menandainya dengan ID komit saat runtime tindakan. Nama gambar yang dihasilkan mungkin terlihat seperti ini:

   `MyDockerImage:a37bd7e`

1. Tindakan **definisi tugas Render Amazon ECS** menambahkan nama gambar yang dihasilkan secara dinamis`MyDockerImage:a37bd7e`, ke file definisi tugas Anda, seperti ini:

   ```
   {
       "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
                   }
               ]
           }
       ],
   ...
   }
   ```

   Secara opsional, Anda juga dapat meminta tindakan **definisi tugas Render Amazon ECS** menambahkan variabel lingkungan ke definisi tugas, seperti ini:

   ```
   {
     "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"
           }
         ]
       }
     ],
   ...
   }
   ```

   Untuk informasi selengkapnya tentang variabel lingkungan, lihat [Menentukan variabel lingkungan](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html) di *Panduan Pengembang Layanan Amazon Elastic Container*.

1. Tindakan **Deploy to Amazon ECS** mendaftarkan file definisi tugas yang diperbarui dengan Amazon ECS. Mendaftarkan file definisi tugas yang diperbarui menyebarkan gambar baru, `MyDockerImage:a37bd7e` ke Amazon ECS.

## Gambar runtime yang digunakan oleh tindakan 'Render Amazon ECS task definition'
<a name="render-ecs-action-runtime"></a>

Tindakan **definisi tugas Render Amazon ECS** berjalan pada [gambar November 2022](build-images.md#build.previous-image). Lihat informasi yang lebih lengkap di [Gambar aktif](build-images.md#build-curated-images).