

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Ein Container-Image erstellen, taggen und pushen
<a name="containers-build-push"></a>

Erstellen Sie das Image für die Prozessorarchitektur, die von Ihrer Flotte verwendet wird. Vom Dienst verwaltete Linux-Flotten mit dem Docker Software-Add-on nutzen die `linux/amd64` Plattform. Weisen Sie jeder Imageversion ein Tag zu, das ihren Inhalt kennzeichnet, z. B. eine Anwendungsversion oder eine Quellversion.

## Voraussetzungen
<a name="containers-build-prerequisites"></a>

Installieren Sie Docker und AWS CLI auf Ihrer Workstation. Erstellen Sie ein privates Amazon ECR-Repository und konfigurieren Sie Ihre AWS Anmeldeinformationen mit der Erlaubnis, Bilder in dieses Repository zu übertragen.

## Erstellen Sie das Image und übertragen Sie es
<a name="containers-build-procedure"></a>

**Um ein Container-Image zu erstellen und zu pushen**

1. Legen Sie Werte für Ihr AWS Konto, Ihre Region, Ihr Repository und Ihr Image-Tag fest.

   ```
   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. Erstellen Sie das Image aus dem Verzeichnis, das Ihre Dockerfile enthält.

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

1. Führen Sie einen anwendungsspezifischen Befehl aus, um das Image lokal zu testen.

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

1. Authentifizieren Sie Docker sich bei Ihrer privaten Amazon ECR-Registrierung.

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

1. Wenden Sie das Amazon ECR-Image-Tag an und übertragen Sie das Bild.

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

1. Rufen Sie den Image-Digest ab und zeichnen Sie ihn zusammen mit Ihrer Build-Ausgabe auf.

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

Verwenden Sie ein festes Versions-Tag oder einen Image-Digest für wiederholbare Jobs. Ein veränderbares Tag, das z. B. in verschiedenen Sitzungen zu unterschiedlichen Bildinhalten führen `latest` kann.