

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Criando, marcando e enviando uma imagem de contêiner
<a name="containers-build-push"></a>

Crie a imagem da arquitetura de processador usada pela sua frota. As frotas gerenciadas por serviços Linux com o complemento de Docker software usam a plataforma. `linux/amd64` Dê a cada versão da imagem uma tag que identifique seu conteúdo, como uma versão do aplicativo ou uma revisão do código-fonte.

## Pré-requisitos
<a name="containers-build-prerequisites"></a>

Instale Docker e AWS CLI em sua estação de trabalho. Crie um repositório privado do Amazon ECR e configure suas AWS credenciais com permissão para enviar imagens para esse repositório.

## Crie e envie a imagem
<a name="containers-build-procedure"></a>

**Para criar e enviar uma imagem de contêiner**

1. Defina valores para sua AWS conta, região, repositório e tag de imagem.

   ```
   REGION={{us-west-2}}
   ACCOUNT_ID={{123456789012}}
   REPOSITORY={{portable-job}}
   IMAGE_TAG={{1.0.0}}
   REGISTRY="${ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com"
   IMAGE_URI="${REGISTRY}/${REPOSITORY}:${IMAGE_TAG}"
   ```

1. No diretório que contém seu Dockerfile, crie a imagem.

   ```
   docker build --platform linux/amd64 \
       --tag "${REPOSITORY}:${IMAGE_TAG}" \
       .
   ```

1. Execute um comando específico do aplicativo para testar a imagem localmente.

   ```
   docker run --rm "${REPOSITORY}:${IMAGE_TAG}" {{test-command}}
   ```

1. DockerAutentique-se em seu registro privado do Amazon ECR.

   ```
   aws ecr get-login-password --region "${REGION}" | \
       docker login --username AWS --password-stdin "${REGISTRY}"
   ```

1. Aplique a tag de imagem do Amazon ECR e envie a imagem.

   ```
   docker tag "${REPOSITORY}:${IMAGE_TAG}" "${IMAGE_URI}"
   docker push "${IMAGE_URI}"
   ```

1. Recupere o resumo da imagem e grave-o com a saída da compilação.

   ```
   aws ecr describe-images \
       --region "${REGION}" \
       --repository-name "${REPOSITORY}" \
       --image-ids imageTag="${IMAGE_TAG}" \
       --query 'imageDetails[0].imageDigest' \
       --output text
   ```

Use uma tag de versão fixa ou um resumo de imagem para trabalhos repetíveis. Uma tag mutável, como a que `latest` pode ser resolvida em diferentes conteúdos de imagem em todas as sessões.