

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.

# Docker-Images für Lightsail-Container-Services erstellen und testen
<a name="amazon-lightsail-creating-container-images"></a>

Mit Docker können Sie verteilte, auf Containern basierende Anwendungen erstellen, ausführen, testen und bereitstellen. Amazon-Lightsail-Container-Services verwenden Docker-Container-Images in Bereitstellungen, um Container zu starten.

In diesem Leitfaden zeigen wir Ihnen, wie Sie mit einer Docker-Datei ein Container-Image auf Ihrem lokalen Computer erstellen. Nachdem Ihr Image erstellt wurde, können Sie es dann an Ihren Lightsail-Container-Service senden, um es bereitzustellen.

Um die Verfahren in diesem Leitfaden durchzuführen, sollten Sie über ein grundlegendes Verständnis dessen verfügen, was ein Docker ist und wie er funktioniert. Weitere Informationen zu Docker finden Sie unter [Was ist Docker?](https://aws.amazon.com/docker/) und im Thema [Docker-Übersicht](https://docs.docker.com/get-started/overview/).

**Inhalt**
+ [Schritt 1: Erfüllen der Voraussetzungen](#create-container-image-prerequisite)
+ [Schritt 2: Erstellen einer Docker-Datei und Erstellen eines Container-Images](#create-container-image-create-dockerfile)
+ [Schritt 3: Ausführen des neuen Container-Images](#create-container-image-run-container)
+ [(Optional) Schritt 4: Bereinigen der Container, die auf dem lokalen Computer ausgeführt werden](#create-container-image-cleanup)
+ [Nächste Schritte nach dem Erstellen von Container-Images](#create-container-image-next-steps)

## Schritt 1: Erfüllen der Voraussetzungen
<a name="create-container-image-prerequisite"></a>

Bevor Sie beginnen, müssen Sie die zum Erstellen von Containern erforderliche Software installieren und diese dann an Ihren Lightsail-Container-Service verschieben. Beispielsweise müssen Sie Docker installieren und verwenden, um Ihre Container-Images zu erstellen und zu entwickeln, die Sie dann mit Ihrem Lightsail-Container-Service verwenden können. Weitere Informationen finden Sie unter [Installieren von Software zur Verwaltung von Container-Images für Ihre Amazon-Lightsail-Container-Services](amazon-lightsail-install-software.md).

## Schritt 2: Erstellen einer Docker-Datei und Erstellen eines Container-Images
<a name="create-container-image-create-dockerfile"></a>

Führen Sie die folgenden Schritte aus, um eine Docker-Datei zu erstellen, und entwickeln Sie daraus ein `mystaticwebsite`-Docker-Container-Image. Das Container-Image wird für eine einfache statische Website sein, die auf einem Apache-Webserver auf Ubuntu gehostet wird.

1. Erstellen eines `mystaticwebsite`-Ordners auf Ihrem lokalen Computer, in dem Sie Ihre Docker-Datei speichern.

1. Erstellen Sie eine Docker-Datei in dem Ordner, den Sie gerade erstellt haben.

   Die Docker-Datei verwendet keine Dateierweiterung, wie`.TXT`. Der komplette Dateiname lautet `Dockerfile`.

1. Kopieren Sie einen der folgenden Codeblöcke, je nachdem, wie Sie Ihr Container-Image konfigurieren möchten und fügen Sie es in Ihre Docker-Datei ein:
   + **Wenn Sie ein einfaches statisches Website-Container-Image mit einer Hello-World-Nachricht erstellen möchten**, kopieren Sie den folgenden Codeblock und fügen Sie ihn in die Docker-Datei ein. In diesem Codebeispiel wird das Ubuntu-18.04-Image verwendet. Die`RUN`-Anweisungen aktualisieren die Paket-Caches, installiert und konfiguriert Apache und druckt eine Hello-World-Nachricht an das Dokumenten-Stammverzeichnis des Webservers. Die `EXPOSE`-Anweisung stellt Port 80 auf dem Container bereit, und die `CMD`-Anweisung startet den Webserver.

     ```
     FROM ubuntu:18.04
     
     # Install dependencies
     RUN apt-get update && \
      apt-get -y install apache2
     
     # Write hello world message
     RUN echo 'Hello World!' > /var/www/html/index.html
     
     # Open port 80
     EXPOSE 80
     
     # Start Apache service
     CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
     ```
   + **Wenn Sie Ihren eigenen Satz von HTML-Dateien für Ihr statisches Website-Container-Image verwenden möchten**, erstellen Sie einen `html`-Ordner in demselben Ordner, in dem Sie Ihre Docker-Datei speichern. Legen Sie dann Ihre HTML-Dateien in diesen Ordner.

     Nachdem sich Ihre HTML-Dateien im`html`-Ordner befinden, kopieren Sie den folgenden Codeblock und fügen Sie ihn in die Docker-Datei ein. In diesem Codebeispiel wird das Ubuntu-18.04-Image verwendet. Die`RUN`-Anweisungen aktualisieren die Paket-Caches und installiert und konfiguriert Apache. Die`COPY`-Anweisung kopiert den Inhalt des HTML-Ordners in das Dokumenten-Stammverzeichnis des Webservers. Die `EXPOSE`-Anweisung stellt Port 80 auf dem Container bereit, und die `CMD`-Anweisung startet den Webserver.

     ```
     FROM ubuntu:18.04
     
     # Install dependencies
     RUN apt-get update && \
      apt-get -y install apache2
     
     # Copy html directory files
     COPY html /var/www/html/
     
     # Open port 80
     EXPOSE 80
     
     CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
     ```

1. Öffnen Sie eine Eingabeaufforderung oder ein Terminalfenster, und ändern Sie das Verzeichnis zu dem Ordner, in dem Sie Ihre Docker-Datei speichern.

1. Geben Sie den folgenden Befehl ein, um das Container-Image mit der Docker-Datei in dem Ordner zu entwickeln. Dieser Befehl entwickelt ein neues Docker-Container-Image namens `mystaticwebsite`.

   ```
   docker build -t mystaticwebsite .
   ```

   Sie sollten eine Meldung sehen, die bestätigt, dass Ihr Image erfolgreich entwickelt wurde.

1. Geben Sie den folgenden Befehl ein, um die Container-Images auf Ihrem lokalen Computer anzuzeigen.

   ```
   docker images --filter reference=mystaticwebsite
   ```

   Sie sollten ein Ergebnis ähnlich dem folgenden Beispiel erhalten, das das neu erstellte Container-Image anzeigt.  
![\[Ergebnis des Befehls „Docker-Images“\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/docker-images-command-result.png)

   Ihr neu entwickeltes Container-Image ist bereit, getestet zu werden, indem es zum Ausführen eines neuen Containers auf Ihrem lokalen Computer verwendet wird. Fahren Sie mit dem nächsten Abschnitt [Schritt 3: Ausführen Ihres neuen Container-Images](#create-container-image-run-container) in diesem Leitfaden fort.

## Schritt 3: Ausführen Ihres neuen Container-Images
<a name="create-container-image-run-container"></a>

Vervollständigen Sie die folgenden Schritte, um das neue Container-Image auszuführen, das Sie erstellt haben.

1. Geben Sie in einer Eingabeaufforderung oder einem Terminalfenster den folgenden Befehl ein, um das Container-Image auszuführen, das Sie im vorherigen Abschnitt [Schritt 2: Erstellen einer Docker-Datei und Erstellen eines Containers](#create-container-image-create-dockerfile) dieses Leitfadens entwickelt haben. Die `-p 8080:80`-Option ordnet den bereitgestellten Port 80 auf dem Container, dem Port 8080 auf Ihrem lokalen Computer zu. Die`-d`-Option gibt an, dass der Container im getrennten Modus ausgeführt werden soll.

   ```
   docker container run -d -p 8080:80 --name mystaticwebsite mystaticwebsite:latest
   ```

1. Geben Sie den folgenden Befehl ein, um die laufenden Container anzuzeigen.

   ```
   docker container ls -a
   ```

   Sie sollten ein Ergebnis ähnlich dem folgenden Beispiel erhalten, das die neuen laufenden Container anzeigt.  
![\[Ergebnis des Befehls „Docker-Container“\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/docker-container-command-result.png)

1. Um zu bestätigen, dass der Container betriebsbereit ist, öffnen Sie ein neues Browserfenster, und navigieren Sie zu`http://localhost:8080`. Sie sollten ein Ergebnis ähnlich dem folgenden Beispiel erhalten. Dies bestätigt, dass Ihr Container auf Ihrem lokalen Computer betriebsbereit ist.  
![\[Statische Website, die auf einem Docker-Container ausgeführt wird\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/container-mystaticsite-hello-world.png)

   Ihr neu entwickeltes Container-Image ist bereit, auf Ihr Lightsail-Konto übertragen zu werden, damit Sie es in Ihrem Lightsail-Container-Service bereitstellen können. Weitere Informationen finden Sie unter [Verschieben und Verwalten von Containter-Images auf Ihre Amazon-Lightsail-Container-Services](amazon-lightsail-pushing-container-images.md).

## (Optional) Schritt 4: Bereinigen der Container, die auf dem lokalen Computer ausgeführt werden
<a name="create-container-image-cleanup"></a>

Nachdem Sie nun ein Container-Image erstellt haben, das Sie an Ihren Lightsail-Container-Service verschieben können, ist es an der Zeit, die Container zu bereinigen, die auf Ihrem lokalen Computer ausgeführt werden, nachdem Sie die in diesem Leitfaden beschriebenen Verfahren befolgt haben.

Vervollständigen Sie die folgenden Schritte, um die Container zu bereinigen, die auf Ihrem lokalen Computer ausgeführt werden:

1. Führen Sie den folgenden Befehl aus, um die Container-Services anzuzeigen, die auf Ihrem lokalen Computer ausgeführt werden.

   ```
   docker container ls -a
   ```

   Sie sollten ein Ergebnis ähnlich dem folgenden erhalten, das die Namen der Container auflistet, die auf Ihrem lokalen Computer ausgeführt werden.  
![\[Ergebnis des Befehls „Docker-Container“\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/docker-container-command-result.png)

1. Führen Sie den folgenden Befehl aus, um den ausgeführten Container zu entfernen, den Sie zuvor in diesem Leitfaden erstellt haben. Dadurch wird der Container zwangsweise gestoppt und dauerhaft gelöscht.

   ```
   docker container rm <ContainerName> --force
   ```

   Ersetzen Sie im Befehl < ContainerName > durch den Namen des Containers, den Sie beenden und löschen möchten.

   Beispiel:

   ```
   docker container rm mystaticwebsite --force
   ```

   Der Container, der als Ergebnis dieses Leitfadens erstellt wurde, sollte nun gelöscht werden.

## Nächste Schritte nach dem Erstellen von Container-Images
<a name="create-container-image-next-steps"></a>

Nachdem Sie Ihre Container-Images erstellt haben, verschieben Sie sie an Ihren Lightsail-Container-Service, wenn Sie bereit sind, diese bereitzustellen. Weitere Informationen finden Sie unter [Lightsail-Container-Service-Images verwalten](amazon-lightsail-pushing-container-images.md).

**Topics**
+ [Schritt 1: Erfüllen der Voraussetzungen](#create-container-image-prerequisite)
+ [Schritt 2: Erstellen einer Docker-Datei und Erstellen eines Container-Images](#create-container-image-create-dockerfile)
+ [Schritt 3: Ausführen Ihres neuen Container-Images](#create-container-image-run-container)
+ [(Optional) Schritt 4: Bereinigen der Container, die auf dem lokalen Computer ausgeführt werden](#create-container-image-cleanup)
+ [Nächste Schritte nach dem Erstellen von Container-Images](#create-container-image-next-steps)
+ [Verwalten von Container-Images](amazon-lightsail-pushing-container-images.md)
+ [Installieren Sie das Container-Services-Plugin](amazon-lightsail-install-software.md)
+ [Privater Repository-Zugriff von Amazon ECR](amazon-lightsail-container-service-ecr-private-repo-access.md)

# Container-Images für einen Lightsail-Container-Service übertragen, anzeigen und löschen
<a name="amazon-lightsail-pushing-container-images"></a>

Wenn Sie eine Bereitstellung in Ihrem Amazon-Lightsail-Container-Service erstellen, müssen Sie für jeden Containereintrag ein Quellcontainer-Image angeben. Sie können Images aus einer öffentlichen Registrierung verwenden, z. B. Amazon ECR Public Gallery oder Sie können Images verwenden, die Sie auf Ihrem lokalen Computer erstellen. Erfahren Sie, wie Sie Container-Images von Ihrem lokalen Computer auf den Lightsail-Container-Service schieben. Weitere Informationen finden Sie unter [Erstellen von Images für Container-Services](amazon-lightsail-creating-container-images.md).

**Inhalt**
+ [Voraussetzungen](#push-container-images-prerequisites)
+ [Schieben von Container-Images von Ihrem lokalen Computer an Ihren Container-Service](#push-container-images)
+ [Anzeigen von Container-Images, die auf Ihrem Container-Service gespeichert sind](#view-pushed-container-images)
+ [Löschen von Container-Images, die auf Ihrem Container-Service gespeichert sind](#delete-stored-container-images)

## Voraussetzungen
<a name="push-container-images-prerequisites"></a>

Führen Sie die folgenden Voraussetzungen aus, bevor Sie mit dem Schieben Ihrer Container-Images zu Ihrem Container-Service beginnen:
+ Erstellen Sie Ihren Container-Service in Ihrem Lightsail-Konto. Weitere Informationen finden Sie unter [Erstellen von Amazon-Lightsail-Container-Servicesn](amazon-lightsail-creating-container-services.md).
+ Installieren Sie Software auf Ihrem lokalen Computer, die Sie benötigen, um Ihre eigenen Container-Images zu erstellen und sie an Ihren Lightsail-Container-Service zu übertragen. Weitere Informationen finden Sie unter [Installieren von Software zur Verwaltung von Container-Images für Ihre Amazon-Lightsail-Container-Services](amazon-lightsail-install-software.md).
+ Erstellen Sie Container-Images auf Ihrem lokalen Rechner, die Sie an Ihren Lightsail-Container-Service übertragen können. Weitere Informationen finden Sie unter [Verschieben und Verwalten von Containter-Images auf Ihren Amazon-Lightsail-Container-Servicesn](amazon-lightsail-creating-container-images.md).

## Schieben von Container-Images von Ihrem lokalen Computer an Ihren Container-Service
<a name="push-container-images"></a>

Führen Sie das folgende Verfahren aus, um Ihre Container-Images an Ihren Container-Service zu übertragen.

1. Öffnen Sie ein Terminal- oder Eingabeaufforderungsfenster.

1. Geben Sie in der Eingabeaufforderung oder im Terminalfenster den folgenden Befehl ein, um die Docker-Images anzuzeigen, die sich derzeit auf Ihrem lokalen Computer befinden.

   ```
   docker images
   ```

1. Suchen Sie im Ergebnis den Namen (Repository-Name) und das Tag des Container-Images, das Sie an den Container-Service senden möchten. Notieren Sie sich dies. Sie benötigen ihn im nächsten Schritt.  
![\[Docker-Container-Images auf einem lokalen Computer\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/amazon-lightsail-container-service-docker-images.png)

1. Geben Sie den folgenden Befehl ein, um das Container-Image auf Ihrem lokalen Computer an den Container-Service zu übertragen.

   ```
   aws lightsail push-container-image --region <Region> --service-name <ContainerServiceName> --label <ContainerImageLabel> --image <LocalContainerImageName>:<ImageTag>
   ```

   Ersetzen Sie im Befehl Folgendes:
   + *<Region>*mit der AWS-Region, in der Ihr Container-Service erstellt wurde.
   + *<ContainerServiceName>*mit dem Namen Ihres Container-Service.
   + *<ContainerImageLabel>*mit dem Etikett, das Sie Ihrem Container-Image geben möchten, wenn es auf Ihrem Container-Service gespeichert wird. Geben Sie ein beschreibendes Label an, mit dem Sie die verschiedenen Versionen Ihrer registrierten Container-Images verfolgen können.

     Das Label ist Teil des Container-Image-Namens, der von Ihrem Container-Service generiert wird. Beispiel: Ihr Container-Servicename ist `container-service-1`, die Container-Image-Bezeichnung ist `mystaticsite` und dies ist die erste Version des Container-Images, das Sie verschieben, dann wird der von Ihrem Container-Service generierte Image-Name `:container-service-1.mystaticsite.1`.
   + *<LocalContainerImageName>*mit dem Namen des Container-Images, das Sie an Ihren Container-Service übertragen möchten. Sie haben den Namen des Container-Images im vorherigen Schritt dieses Verfahrens erhalten.
   + *<ImageTag>*mit dem Tag des Container-Images, das Sie an Ihren Container-Service übertragen möchten. Sie haben den Tag des Container-Images im vorherigen Schritt dieses Verfahrens erhalten.

   Beispiel:

   ```
   aws lightsail push-container-image --region us-west-2 --service-name myservice --label mystaticwebsite --image mystaticwebsite:v2
   ```

   Sie sollten ein Ergebnis ähnlich dem folgenden sehen, das bestätigt, dass Ihr Container-Image an den Container-Service übertragen wurde.  
![\[Das Docker-Container-Image wurde an einen Lightsail-Containerdienst übertragen\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/amazon-lightsail-container-service-pushed-image.png)

   Betrachten Sie den folgenden Abschnitt [Anzeigen von Container-Images, die auf Ihrem Container-Service gespeichert sind](#view-pushed-container-images) in diesem Leitfaden, um Ihr Push-Container-Image in Ihrem Container-Dienst auf der Lightsail-Konsole anzuzeigen.

## Anzeigen von Container-Images, die auf Ihrem Container-Service gespeichert sind
<a name="view-pushed-container-images"></a>

Führen Sie das folgende Verfahren aus, um Container-Images anzuzeigen, die auf Ihrem Container-Service übertragen wurden und gespeichert werden.

1. Melden Sie sich bei der [Lightsail-Konsole](https://lightsail.aws.amazon.com/) an.

1. **Wählen Sie im linken Navigationsbereich Containers aus.**

1. Wählen Sie den Namen des Container-Servicess aus, für den Sie die gespeicherten Container-Images anzeigen möchten.

1. Wählen Sie die Registerkarte **Images** auf der Verwaltungsseite Ihres Container-Servicess aus.
**Anmerkung**  
Die Registerkarte **Images** wird nicht angezeigt, wenn Sie keine Images an Ihren Container-Service übertragen haben. Um die Registerkarte „Images“ für Ihren Container-Service anzuzeigen, müssen Sie zuerst Container-Images an Ihren Service senden.

   Die Seite **Images** listet die Container-Images auf, die an Ihren Container-Service gesendet wurden und derzeit in Ihrem Service gespeichert werden. Container-Images, die in einer aktuellen Bereitstellung verwendet werden, können nicht gelöscht werden und werden mit einem ausgegrauten Löschsymbol aufgelistet.  
![\[Die Seite mit den gespeicherten Bildern der Lightsail-Konsole\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/amazon-lightsail-container-services-stored-images-page.png)

   Sie können Bereitstellungen mit Container-Images erstellen, die in Ihrem Dienst gespeichert sind. Weitere Informationen finden Sie unter Erstellen und Verwalten von Bereitstellungen für Ihre Amazon-Lightsail-Container-Services.

## Löschen von Container-Images, die auf Ihrem Container-Service gespeichert sind
<a name="delete-stored-container-images"></a>

Führen Sie das folgende Verfahren aus, um Container-Images zu löschen, die auf Ihrem Container-Service übertragen wurden und gespeichert werden.

1. Melden Sie sich bei der [Lightsail-Konsole](https://lightsail.aws.amazon.com/) an.

1. **Wählen Sie im linken Navigationsbereich Containers aus.**

1. Wählen Sie den Namen des Container-Servicess aus, für den Sie die aktuelle Bereitstellung anzeigen möchten.

1. Wählen Sie die Registerkarte **Images** auf der Verwaltungsseite Ihres Container-Servicess aus.
**Anmerkung**  
Die Registerkarte **Images** wird nicht angezeigt, wenn Sie keine Images an Ihren Container-Service übertragen haben. Um die Registerkarte „Images“ für Ihren Container-Service anzuzeigen, müssen Sie zuerst Container-Images an Ihren Service senden.

1. Suchen Sie das Container-Image, das Sie löschen möchten und wählen Sie dann das Symbol zum Löschen (Papierkorb) aus.
**Anmerkung**  
Container-Images, die in einer aktuellen Bereitstellung verwendet werden, können nicht gelöscht werden, und ihre Löschsymbole sind ausgegraut.

1. Wählen Sie in der angezeigten Bestätigungsaufforderung **Ja, löschen** um zu bestätigen, dass Sie das gespeicherte Image dauerhaft löschen möchten.

   Ihr gespeichertes Container-Image wird sofort aus Ihrem Container-Service gelöscht.

# Installieren Sie Docker und AWS CLI das Lightsail Control-Plugin für Container
<a name="amazon-lightsail-install-software"></a>

Sie können die Amazon Lightsail-Konsole verwenden, um Ihre Lightsail-Container-Services zu erstellen und Bereitstellungen mithilfe von Container-Images aus einer öffentlichen Online-Registrierung wie Amazon ECR Public Gallery zu erstellen. Um eigene Container-Images zu erstellen und sie an Ihren Container-Service zu übertragen, müssen Sie die folgende zusätzliche Software auf demselben Computer installieren, auf dem Sie Ihre Container-Images erstellen möchten:
+ **Docker** — Führen Sie Ihre eigenen Container-Images aus, testen und erstellen Sie sie, die Sie dann mit Ihrem Lightsail-Container-Service verwenden können.
+ **AWS Command Line Interface (AWS CLI)** — Geben Sie die Parameter der Container-Images an, die Sie erstellen, und übertragen Sie sie dann an Ihren Lightsail-Container-Service. Version 2.1.1 und höher funktionieren mit dem Lightsail Control-Plugin.
+ **Lightsail Control (lightsailctl) -Plugin** — Ermöglicht den Zugriff auf die Container-Images AWS CLI , die sich auf dem lokalen Computer befinden.

In den folgenden Abschnitten dieses Leitfadens wird beschrieben, wo Sie diese Softwarepakete herunterladen und installieren können. Weitere Informationen zu Container-Services finden Sie unter [Container-Services](amazon-lightsail-container-services.md).

**Inhalt**
+ [Installieren von Docker](#install-software-docker)
+ [Installieren Sie das AWS CLI](#install-software-aws-cli)
+ [Installieren Sie das Lightsail Control-Plugin](#install-software-lightsailctl)
  + [Installieren des lightsailctl-Plug-In auf Windows](#install-lightsailctl-on-windows)
  + [Installieren des lightsailctl-Plug-Ins auf macOS](#install-lightsailctl-on-macos)
  + [Installieren des lightsailctl-Plug-Ins auf Linux](#install-lightsailctl-on-linux)

## Installieren von Docker
<a name="install-software-docker"></a>

Docker ist die Technologie, die Ihnen die Bereitstellung von auf Linux-Containern basierende, verteilte Anwendungen zu entwickeln, auszuführen und zu testen, ermöglicht. Sie müssen die Docker-Software installieren und verwenden, wenn Sie Ihre eigenen Container-Images erstellen möchten, die Sie dann mit Ihrem Lightsail-Container-Service verwenden können. Weitere Informationen finden Sie unter [Erstellen von Container-Images für Ihre Lightsail-Container-Services](amazon-lightsail-creating-container-images.md).

Docker ist auf vielen verschiedenen Betriebssystemen verfügbar, darunter die meisten modernen Linux-Verteilungen wie Ubuntu und sogar macOS und Windows. Weitere Informationen zur Installation von Docker unter einem bestimmten Betriebssystem finden Sie im [Docker-Installationsleitfaden](https://docs.docker.com/engine/installation/#installation).

**Anmerkung**  
Sie müssen immer die neueste Version von Docker installiert haben. Es kann nicht garantiert werden, dass ältere Versionen von Docker mit dem AWS CLI Lightsail Control (lightsailctl) -Plugin funktionieren, das später in diesem Handbuch beschrieben wird. 

## Installiere das AWS CLI
<a name="install-software-aws-cli"></a>

Das AWS CLI ist ein Open-Source-Tool, mit dem Sie mithilfe von Befehlen in Ihrer Befehlszeilen-Shell mit AWS Diensten wie Lightsail interagieren können. Sie müssen das installieren und verwenden, AWS CLI um Ihre Container-Images, die auf Ihrem lokalen Computer erstellt wurden, an Ihren Lightsail-Container-Service zu übertragen.

Der AWS CLI ist in den folgenden Versionen verfügbar:
+ **Version 2.x** – Die aktuelle, allgemein verfügbare Version der AWS CLI. Dies ist die neueste Hauptversion von AWS CLI und unterstützt die neuesten Funktionen, einschließlich der Möglichkeit, Container-Images an Ihre Lightsail-Containerdienste zu übertragen. Version 2.1.1 und höher funktionieren mit dem Lightsail Control-Plugin.
+ **Version 1.x** — Die vorherige Version von That ist aus Gründen der AWS CLI Abwärtskompatibilität verfügbar. Diese Version unterstützt nicht die Möglichkeit, Ihre Container-Images an Ihre Lightsail-Containerdienste zu übertragen. Daher müssen Sie stattdessen AWS CLI Version 2 installieren.

Die AWS CLI Version 2 ist für Linux-, MacOS- und Windows-Betriebssysteme verfügbar. Anweisungen zur Installation von AWS CLI auf diesen Betriebssystemen finden Sie unter [Installation der AWS CLI Version 2](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html) im *AWS CLI Benutzerhandbuch*.

## Installieren Sie das Lightsail Control-Plugin
<a name="install-software-lightsailctl"></a>

Das Lightsail Control (lightsailctl) -Plugin ist eine einfache Anwendung, mit der Sie auf die Container-Images zugreifen können, die Sie AWS CLI auf Ihrem lokalen Computer erstellt haben. Es ermöglicht Ihnen, Container-Images an Ihren Lightsail-Container-Service zu übertragen, sodass Sie sie für Ihren Service bereitstellen können.

**Systemanforderungen**
+ Ein Windows-, macOS - oder Linux-Betriebssystem mit 64-Bit-Unterstützung.
+ AWS CLI Version 2 muss auf Ihrem lokalen Computer installiert sein, um das Lightsailctl-Plugin verwenden zu können. Weitere Informationen finden Sie im Abschnitt [Installieren von AWS CLI](#install-software-aws-cli) weiter oben in diesem Leitfaden.

**Verwenden Sie die neueste Version des lightsailctl-Plug-Ins**

Das lightsailctl-Plug-In wird gelegentlich mit erweiterter Funktionalität aktualisiert. Jedes Mal, wenn Sie das lightsailctl-Plug-In verwenden, führt es eine Überprüfung durch, um zu bestätigen, dass Sie die neueste Version verwenden. Wenn eine neue Version verfügbar ist, werden Sie aufgefordert, auf die neueste Version zu aktualisieren, um die neuesten Funktionen zu nutzen. Wenn Aktualisierungen veröffentlicht werden, müssen Sie die Installation wiederholen, um die aktuelle Version des lightsailctl-Plug-Ins zu erhalten.

In der folgenden Tabelle finden Sie alle Versionen des lightsailctl-Plug-Ins, sowie die in den einzelnen Versionen enthaltenen Funktionen und Erweiterungen.
+ **v1.0.0 (veröffentlicht am 12. November 2020) — Die erste Version bietet Funktionen für AWS CLI Version 2,** um Container-Images an einen Lightsail-Container-Service zu übertragen.

### Installieren des lightsailctl-Plug-In auf Windows
<a name="install-lightsailctl-on-windows"></a>

Führen Sie das folgende Verfahren durch, um lightsailctl-Plug-in auf Windows zu installieren.

1. Laden Sie die ausführbare Datei über die folgende URL herunter und speichern Sie sie im `C:\Temp\lightsailctl\`-Verzeichnis.

   ```
   https://s3.us-west-2.amazonaws.com/lightsailctl/latest/windows-amd64/lightsailctl.exe
   ```

1. Wählen Sie die **Windows Start**-Schaltfläche aus und suchen Sie dann nach `cmd` .

1. Klicken Sie in den Suchergebnissen mit der rechten Maustaste auf die Anwendung **Eingabeaufforderung** in den Ergebnissen und wählen Sie **Als Administrator ausführen** aus.  
![\[Eingabeaufforderung als Administrator ausführen\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/lightsailctl-cmd-run-as-administrator.png)
**Anmerkung**  
Möglicherweise wird eine Eingabeaufforderung angezeigt, in der Sie gefragt werden, ob Sie der Eingabeaufforderung erlauben möchten, Änderungen an Ihrem Gerät vorzunehmen. Sie müssen**Ja** auswählen, um mit der Installation fortzufahren.

1. Geben Sie den folgenden Befehl ein, um eine Pfadumgebungsvariable festzulegen, die auf das`C:\Temp\lightsailctl\`Verzeichnis, in dem Sie das lightsailctl-Plug-In gespeichert haben verweist.

   ```
   setx PATH "%PATH%;C:\Temp\lightsailctl" /M
   ```

   Sie sollten ein Ergebnis ähnlich dem folgenden Beispiel erhalten:  
![\[Befehlszeilenantwort auf den Befehl setx\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/lighstailctl-setx-command.png)

Der Befehl `setx` wird nach mehr als 1 024 Zeichen abgeschnitten. Gehen Sie wie folgt vor, um die Umgebungsvariable „path“ manuell festzulegen, wenn Sie in Ihrem PATH bereits mehrere Variablen gesetzt haben. 

1. Klicken Sie im **Startmenü** auf **Systemsteuerung**.

1. Wählen Sie **System und Sicherheit** und dann **System**.

1. Wählen Sie Choose ** Advanced system settings (Erweiterte Systemeinstellungen) aus.**.

1. Öffnen Sie im Dialogfeld **Systemeigenschaften** die Registerkarte **Erweitert** und wählen Sie **Umgebungsvariablen**.

1. Wählen Sie im Feld **Systemvariablen** des Dialogfelds **Umgebungsvariablen** die Option **Pfad** aus.

1. Wählen Sie die Schaltfläche **Bearbeiten**, die sich unter dem Feld **Systemvariablen** befindet.  
![\[Windows-Systemvariablen\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/lightsail-windows-system-variables.png)

1. Wählen Sie **Neu** und geben Sie dann den folgenden Pfad ein: `C:\Temp\lightsailctl\`  
![\[Windows-Umgebungsvariablen\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/lightsail-windows-edit-env-variable.png)

1. Wählen Sie in drei aufeinanderfolgenden Dialogfeldern **OK**, und schließen Sie dann das Dialogfeld **System**.

Sie sind jetzt bereit, die AWS Command Line Interface (AWS CLI) zu verwenden, um Container-Images an Ihren Lightsail-Container-Service zu übertragen. Weitere Informationen finden Sie unter [Übertragen und Verwalten von Container-Images](amazon-lightsail-pushing-container-images.md).

### Installieren des lightsailctl-Plug-Ins auf macOS
<a name="install-lightsailctl-on-macos"></a>

Führen Sie eines der folgende Verfahren durch, um lightsailctl-Plug-In auf macOS herunterzuladen und zu installieren.

**Homebrew herunterladen und installieren**

1. Öffnen Sie ein Terminal-Fenster.

1. Geben Sie den folgenden Befehl ein, um das lightsailctl-Plug-In herunterzuladen und zu installieren.

   ```
   brew install aws/tap/lightsailctl
   ```
**Anmerkung**  
Weitere Informationen zu Homebrew finden Sie auf der [Homebrew](https://brew.sh/)-Website.

**Manuelles Herunterladen und Installieren**

1. Öffnen Sie ein Terminal-Fenster.

1. Geben Sie den folgenden Befehl ein, um das lightsailctl-Plug-In herunterzuladen und in den bin-Ordner zu kopieren.

   ```
   curl "https://s3.us-west-2.amazonaws.com/lightsailctl/latest/darwin-amd64/lightsailctl" -o "/usr/local/bin/lightsailctl"
   ```

1. Geben Sie den folgenden Befehl ein, um das Plug-In ausführbar zu machen.

   ```
   chmod +x /usr/local/bin/lightsailctl
   ```

1. Geben Sie den folgenden Befehl ein, um erweiterte Attribute für das Plug-In zu bereinigen.

   ```
   xattr -c /usr/local/bin/lightsailctl
   ```

Sie sind jetzt bereit, das zu verwenden, AWS CLI um Container-Images an Ihren Lightsail-Container-Service zu übertragen. Weitere Informationen finden Sie unter [Übertragen und Verwalten von Container-Images](amazon-lightsail-pushing-container-images.md).

### Installieren des lightsailctl-Plug-Ins auf Linux
<a name="install-lightsailctl-on-linux"></a>

Gehen Sie wie folgt vor, um das Lightsail-Container-Services-Plug-In unter Linux zu installieren.

1. Öffnen Sie ein Terminal-Fenster.

1. Geben Sie den folgenden Befehl ein, um das lightsailctl-Plug-In herunterzuladen.
   + Für die AMD-64-Bit-Architekturversion des Plug-Ins:

     ```
     curl "https://s3.us-west-2.amazonaws.com/lightsailctl/latest/linux-amd64/lightsailctl" -o "/usr/local/bin/lightsailctl"
     ```
   + Für die AMD-64-Bit-Architekturversion des Plug-Ins:

     ```
     curl "https://s3.us-west-2.amazonaws.com/lightsailctl/latest/linux-arm64/lightsailctl" -o "/usr/local/bin/lightsailctl"
     ```

1. Geben Sie den folgenden Befehl ein, um das Plug-In ausführbar zu machen.

   ```
   sudo chmod +x /usr/local/bin/lightsailctl
   ```

   Sie sind jetzt bereit, das zu verwenden, AWS CLI um Container-Images an Ihren Lightsail-Container-Service zu übertragen. Weitere Informationen finden Sie unter [Übertragen und Verwalten von Container-Images](amazon-lightsail-pushing-container-images.md).

# Gewähren Sie Lightsail Container Services Zugriff auf private Amazon ECR-Repositorys
<a name="amazon-lightsail-container-service-ecr-private-repo-access"></a>

Amazon Elastic Container Registry (Amazon ECR) ist ein AWS verwalteter Container-Image-Registry-Service, der private Repositorys mit ressourcenbasierten Berechtigungen mithilfe von AWS Identity and Access Management (IAM) unterstützt. Sie können Ihren Amazon Lightsail-Container-Services Zugriff auf Ihre privaten Amazon ECR-Repositorys gewähren. AWS-Region Anschließend können Sie Images aus Ihrem privaten Repository für Ihre Container-Services bereitstellen.

Sie können den Zugriff auf Ihre Lightsail-Container-Services und Ihre privaten Amazon ECR-Repositorys mithilfe der Lightsail-Konsole oder der () verwalten. AWS Command Line Interface AWS CLI Wir empfehlen jedoch, die Lightsail-Konsole zu verwenden, da sie den Vorgang vereinfacht.

Weitere Informationen zu Container-Services finden Sie unter [Container-Services](amazon-lightsail-container-services.md). Weitere Informationen zur Amazon ECR finden Sie unter Sicherheit im [Amazon-ECR-Benutzerhandbuch](https://docs.aws.amazon.com/AmazonECR/latest/userguide/what-is-ecr.html).

**Inhalt**
+ [Erforderliche Berechtigungen](#ecr-private-repos-permissions)
+ [Verwenden Sie die Lightsail-Konsole, um den Zugriff auf private Repositorys zu verwalten](#ecr-private-repo-access-lightsail-console)
+ [Verwenden Sie die AWS CLI , um den Zugriff auf private Repositorys zu verwalten](#ecr-private-repo-access-cli)
  + [Aktivieren oder deaktivieren der IAM-Rolle des Amazon-ECR-Image-Pullers](#activate-ecr-puller-role)
  + [Ermitteln, ob Ihr privates Amazon-ECR-Repository eine Richtlinienerklärung hat](#identify-ecr-repo-policy-statement)
    + [Hinzufügen einer Richtlinie zu einem privaten Repository, das keine Richtlinienanweisung hat](#ecr-private-repo-add-policy-no-policy)
    + [Hinzufügen einer Richtlinie zu einem privaten Repository, das über eine Richtlinienanweisung verfügt](#ecr-private-repo-add-policy-existing-policy)

## Erforderliche Berechtigungen
<a name="ecr-private-repos-permissions"></a>

Der Benutzer, der den Zugriff für Lightsail-Container-Services auf private Amazon ECR-Repositorys verwaltet, muss über eine der folgenden Berechtigungsrichtlinien in IAM verfügen. Informationen finden Sie im Abschnitt [Hinzufügen und Entfernen von IAM-Identitätsberechtigungen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) im *AWS Identity and Access Management -Benutzerhandbuch*.

**Gewähren von Zugriff auf jegliche private Amazon-ECR-Repositories**

Die folgende Berechtigungsrichtlinie gewährt einem Benutzer die Berechtigung, den Zugriff auf ein beliebiges privates Amazon-ECR-Repository zu konfigurieren.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ManageEcrPrivateRepositoriesAccess",
            "Effect": "Allow",
            "Action": [
                "ecr:SetRepositoryPolicy",
                "ecr:DescribeRepositories",
                "ecr:DeleteRepositoryPolicy",
                "ecr:GetRepositoryPolicy"
            ],
            "Resource": "arn:aws:ecr:*:111122223333:repository/*"
        }
    ]
}
```

------

Ersetzen Sie diese in der Richtlinie durch Ihre *AwsAccountId* Konto-ID-Nummer. AWS 

**Gewähren Sie Zugriff auf ein bestimmtes privates Amazon-ECR-Repository**

Die folgende Berechtigungsrichtlinie gewährt einem Benutzer die Berechtigung, den Zugriff auf ein bestimmtes privates Amazon-ECR-Repository in einer bestimmten AWS-Region zu konfigurieren.

Ersetzen Sie in der Richtlinie den folgenden Beispieltext mit Ihrem eigenen:
+ *AwsRegion*— Der AWS-Region Code (zum Beispiel`us-east-1`) des privaten Repositorys. Ihr Lightsail-Container-Service muss sich in demselben Verzeichnis befinden AWS-Region wie die privaten Repositorys, auf die Sie zugreifen möchten.
+ *AwsAccountId*— Ihre AWS Konto-ID-Nummer.
+ *RepositoryName*— Der Name des privaten Repositorys, für das Sie den Zugriff verwalten möchten.

Es folgt das Beispiel für die Berechtigungsrichtlinie, die mit Beispielwerten gefüllt ist.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ManageEcrPrivateRepositoriesAccess",
            "Effect": "Allow",
            "Action": [
                "ecr:SetRepositoryPolicy",
                "ecr:DescribeRepositories",
                "ecr:DeleteRepositoryPolicy",
                "ecr:GetRepositoryPolicy"
            ],
            "Resource": "arn:aws:ecr:us-east-1:111122223333:repository/my-private-repo"
        }
    ]
}
```

------

## Verwenden Sie die Lightsail-Konsole, um den Zugriff auf private Repositorys zu verwalten
<a name="ecr-private-repo-access-lightsail-console"></a>

Gehen Sie wie folgt vor, um mit der Lightsail-Konsole den Zugriff für einen Lightsail-Container-Service auf ein privates Amazon ECR-Repository zu verwalten.

1. Melden Sie sich bei der [Lightsail-Konsole](https://lightsail.aws.amazon.com/) an.

1. **Wählen Sie im linken Navigationsbereich Containers aus.**

1. Wählen Sie den Namen des Container-Services aus, für den Sie den Zugriff auf ein privates Amazon-ECR-Repository konfigurieren möchten.  
![\[Containerservice in der Lightsail-Konsole\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/container-service-card.png)

1. Wählen Sie die Registerkarte **Images**.  
![\[Registerkarte „Bilder“ auf der Container-Service-Verwaltungsseite der Lightsail-Konsole\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/container-service-images-tab.png)

1. Wählen Sie **Repository hinzufügen** aus, um Ihrem Container-Service Zugriff auf ein privates Amazon-ECR-Repository zu erteilen.
**Anmerkung**  
Sie können **Entfernen** auswählen, um den Zugriff für Ihren Container-Service auf ein zuvor hinzugefügtes privates Amazon-ECR-Repository zu entfernen.  
![\[Abschnitt private Amazon-ECR-Repositorys der Images-Registerkarte\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/container-service-ecr-repos-section.png)

1. Wählen Sie im angezeigten Dropdown-Menü das private Repository aus, auf das Sie zugreifen möchten, und dann **Add** (Hinzufügen).  
![\[Dropdown-Auswahl an privaten Amazon-ECR-Repositorys\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/container-service-ecr-repos-selection.png)

   Lightsail benötigt einen Moment, um die IAM-Rolle Amazon ECR Image Puller für Ihren Container-Service zu aktivieren, die einen primären Amazon Resource Name (ARN) beinhaltet. Lightsail fügt dann automatisch den IAM-Rollenprinzipal-ARN zur Berechtigungsrichtlinie des von Ihnen ausgewählten privaten Amazon ECR-Repositorys hinzu. Dies gewährt Ihrem Container-Service Zugriff auf das private Repository und seine Images. Schließen Sie das Browserfenster nicht, bis das Modal erscheint und anzeigt, dass der Vorgang abgeschlossen ist, wonach Sie **Continue** (Weiter) auswählen können.  
![\[Modal bestätigt, dass dem privaten Amazon-ECR-Repository Berechtigungen hinzugefügt werden\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/container-service-ecr-repos-confirmation-modal.png)

1. Wählen Sie **Continue** (Weiter), wenn die Aktivierung abgeschlossen ist.

   Nachdem es ausgewählte private Amazon-ECR-Repository hinzugefügt wurde, wird es im Abschnitt **Private Amazon-ECR-Repository**s der Seite aufgeführt. Die Seite enthält Anweisungen zum Bereitstellen eines Images aus dem privaten Repository für Ihren Lightsail-Container-Service. Um ein Image aus Ihrem privaten Repository zu verwenden, geben Sie das URI-Format an, das auf der Seite beim Erstellen Ihrer Container-Service-Bereitstellung als der **Image**-Wert angezeigt wird. Ersetzen Sie in der von Ihnen angegebenen URI das Beispiel *\$1image tag\$1* durch das Tag des Images, das Sie bereitstellen möchten. Weitere Informationen finden Sie unter [Erstellen und Verwalten von Bereitstellungen für Container-Services](amazon-lightsail-container-services-deployments.md).  
![\[Nächste Schritte nach dem Hinzufügen eines privaten Amazon-ECR-Repositorys\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/container-service-ecr-repos-next-steps.png)

## Verwenden Sie den AWS CLI , um den Zugriff auf private Repositorys zu verwalten
<a name="ecr-private-repo-access-cli"></a>

Die Verwaltung des Zugriffs für einen Lightsail-Container-Service auf ein privates Amazon ECR-Repository mithilfe von AWS Command Line Interface (AWS CLI) erfordert die folgenden Schritte:

**Wichtig**  
Wir empfehlen, dass Sie die Lightsail-Konsole verwenden, um den Zugriff für einen Lightsail-Container-Service auf ein privates Amazon ECR-Repository zu verwalten, da dies den Vorgang vereinfacht. Weitere Informationen finden Sie weiter oben in [diesem Handbuch unter Verwenden der Lightsail-Konsole zur Verwaltung des Zugriffs auf private Repositorys](#ecr-private-repo-access-lightsail-console).

1. **Aktivieren oder deaktivieren Sie die IAM-Rolle Amazon ECR Image Puller — Verwenden Sie den AWS CLI `update-container-service` Befehl für Lightsail, um die IAM-Rolle** Amazon ECR Image Puller zu aktivieren oder zu deaktivieren. Ein Prinzipal-Amazon-Ressourcenname (ARN) wird für die IAM-Rolle des Amazon-ECR-Image-Pullers erstellt, wenn Sie ihn aktivieren. Weitere Informationen finden Sie im Abschnitt [Aktivieren oder Deaktivieren der IAM-Rolle des Amazon-ECR-Image-Pullers](#activate-ecr-puller-role) in diesem Leitfaden.

1. **Feststellen, ob Ihr privates Amazon-ECR-Repository über eine Richtlinienerklärung verfügt** – Nachdem Sie die IAM-Rolle des Amazon-ECR-Image-Pullers aktiviert haben, müssen Sie bestimmen, ob das private Amazon-ECR-Repository, auf das Sie mit Ihrem Container-Service zugreifen möchten, über eine vorhandene Richtlinienerklärung verfügt. Weitere Informationen finden Sie weiter unten in diesem Leitfaden unter [Bestimmen, ob Ihr privates Amazon-ECR-Repository über eine Richtlinienerklärung verfügt](#identify-ecr-repo-policy-statement). 

   Sie fügen den Prinzipal-ARN der IAM-Rolle mit einer der folgenden Methoden zu Ihrem Repository hinzu, je nachdem, ob Ihr Repository über eine vorhandene Richtlinienanweisung verfügt:

   1. **Eine Richtlinie zu einem privaten Repository hinzufügen, das keine Richtlinienerklärung hat** — Verwenden Sie den AWS CLI `set-repository-policy` Befehl für Amazon ECR, um den Amazon ECR Image Puller Role Principal ARN für Ihren Container-Service zu einem privaten Repository hinzuzufügen, das über eine bestehende Richtlinie verfügt. Weitere Informationen finden Sie weiter unten in diesem Leitfaden unter [Hinzufügen einer Richtlinie zu einem privaten Repository ohne Richtlinienanweisung](#ecr-private-repo-add-policy-no-policy).

   1. **Eine Richtlinie zu einem privaten Repository hinzufügen, das über eine Richtlinienerklärung verfügt** — Verwenden Sie den AWS CLI `set-repository-policy` Befehl für Amazon ECR, um die Amazon ECR-Image-Puller-Rolle für Ihren Container-Service zu einem privaten Repository hinzuzufügen, für das es keine bestehende Richtlinie gibt. Weitere Informationen finden Sie weiter unten in diesem Leitfaden unter [Hinzufügen einer Richtlinie zu einem privaten Repository mit Richtlinienanweisung](#ecr-private-repo-add-policy-existing-policy).

### Aktivieren oder deaktivieren der IAM-Rolle des Amazon-ECR-Image-Pullers
<a name="activate-ecr-puller-role"></a>

Gehen Sie wie folgt vor, um die IAM-Rolle Amazon ECR Image Puller für Ihren Lightsail-Container-Service zu aktivieren oder zu deaktivieren. Sie können die IAM-Rolle Amazon ECR Image Puller mit dem AWS CLI `update-container-service` Befehl für Lightsail aktivieren oder deaktivieren. Weitere Informationen finden Sie unter [update-container-service](https://docs.aws.amazon.com/cli/latest/reference/lightsail/update-container-service.html) in der Referenz zum *AWS CLI -Befehl*.

**Anmerkung**  
Sie müssen Lightsail installieren AWS CLI und für Lightsail konfigurieren, bevor Sie mit diesem Verfahren fortfahren können. Weitere Informationen finden [Sie unter So konfigurieren, AWS CLI dass es mit Lightsail funktioniert](lightsail-how-to-set-up-and-configure-aws-cli.md).

1. Öffnen Sie ein Terminal- oder Eingabeaufforderungsfenster.

1. Geben Sie den folgenden Befehl ein, um einen Container-Service zu aktualisieren und die IAM-Rolle des Amazon-ECR-Image-Pullers zu aktivieren oder zu deaktivieren.

   ```
   aws lightsail update-container-service --service-name ContainerServiceName --private-registry-access ecrImagePullerRole={isActive=RoleActivationState} --region AwsRegionCode
   ```

   Ersetzen Sie im Befehl den folgenden Beispieltext mit Ihrem eigenen:
   + *ContainerServiceName*— Der Name des Container-Service, für den die IAM-Rolle Amazon ECR Image Puller aktiviert oder deaktiviert werden soll.
   + *RoleActivationState*— Der Aktivierungsstatus der IAM-Rolle Amazon ECR Image Puller. Geben Sie `true` zum Aktivieren der Rolle an, oder `false`, um sie zu deaktivieren.
   + *AwsRegionCode*— Der AWS-Region Code des Containerdienstes (z. B.). `us-east-1`

   Beispiele:
   + So aktivieren Sie die IAM-Rolle des Amazon-ECR-Image-Pullers:

     ```
     aws lightsail update-container-service --service-name my-container-service --private-registry-access ecrImagePullerRole={isActive=true} --region us-east-1
     ```
   + So deaktivieren Sie die IAM-Rolle des Amazon-ECR-Image-Pullers:

     ```
     aws lightsail update-container-service --service-name my-container-service --private-registry-access ecrImagePullerRole={isActive=false} --region us-east-1
     ```

1. Wenn Sie:
   + **Die Amazon-ECR-Image-Puller-Rolle wurde aktiviert** – Warten Sie mindestens 30 Sekunden, nachdem Sie die vorherige Antwort erhalten haben. Fahren Sie dann mit dem nächsten Schritt fort, um den Prinzipal-ARN der IAM-Rolle des Amazon-ECR-Image-Pullers für Ihren Container-Service abzurufen.
   + **Die Amazon-ECR-Image-Puller-Rolle wurde deaktiviert** – Wenn Sie zuvor den Prinzipal-ARN der IAM-Rolle des Amazon-ECR-Image-Pullers zur Berechtigungsrichtlinie Ihres privaten Amazon-ECR-Repositorys hinzugefügt haben, sollten Sie diese Berechtigungsrichtlinie aus Ihrem Repository entfernen. Weitere Informationen finden Sie unter [Richtlinienerklärung für ein privates Repository löschen](https://docs.aws.amazon.com/AmazonECR/latest/userguide/delete-repository-policy.html) im *Amazon-ECR-Benutzerhandbuch*.

1. Geben Sie den folgenden Befehl ein, um den Prinzipal-ARN der IAM-Rolle des Amazon-ECR-Image-Pullers für Ihren Container-Service abzurufen.

   ```
   aws lightsail get-container-services --service-name ContainerServiceName --region AwsRegionCode
   ```

   Ersetzen Sie im Befehl den folgenden Beispieltext mit Ihrem eigenen:
   + *ContainerServiceName*— Der Name Ihres Container-Service, für den Sie den Amazon ECR Image Puller IAM-Rollenprinzipal-ARN abrufen möchten.
   + *AwsRegionCode*— Der AWS-Region Code des Containerdienstes (zum Beispiel). `us-east-1`

   Beispiel:

   ```
   aws lightsail get-container-services --service-name my-container-service --region us-east-1
   ```

   Suchen Sie in der Antwort nach dem Prinzipal-ARN der IAM-Rolle des ECR-Image-Pullers. Wenn eine Rolle aufgeführt ist, kopieren oder notieren Sie sie. Sie benötigen sie für den nächsten Abschnitt dieses Leitfadens. Als Nächstes müssen Sie feststellen, ob eine Richtlinienerklärung auf dem privaten Amazon-ECR-Repository vorhanden ist, auf das Sie mit Ihrem Container-Service zugreifen möchten. Fahren Sie mit dem Abschnitt [Feststellen, ob Ihr privates Amazon-ECR-Repository über eine Richtlinienerklärung verfügt](#identify-ecr-repo-policy-statement) in diesem Leitfaden fort.

### Ermitteln, ob Ihr privates Amazon-ECR-Repository eine Richtlinienerklärung hat
<a name="identify-ecr-repo-policy-statement"></a>

Führen Sie die folgenden Schritte aus, um festzustellen, ob Ihr privates Amazon-ECR-Repository über eine Richtlinienerklärung verfügt. Sie können den AWS CLI `get-repository-policy` Befehl für Amazon ECR verwenden. Weitere Informationen finden Sie unter [update-container-service](https://docs.aws.amazon.com/cli/latest/reference/ecr/get-repository-policy.html) in der Referenz zum *AWS CLI -Befehl*.

**Anmerkung**  
Sie müssen das installieren AWS CLI und für Amazon ECR konfigurieren, bevor Sie mit diesem Verfahren fortfahren können. Weitere Informationen finden Sie unter [Einrichten von Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/get-set-up-for-amazon-ecr.html) im *Amazon-ECR-Benutzerhandbuch*.

1. Öffnen Sie ein Terminal- oder Eingabeaufforderungsfenster.

1. Geben Sie den folgenden Befehl ein, um die Richtlinienanweisung für ein bestimmtes privates Repository abzurufen.

   ```
   aws ecr get-repository-policy --repository-name RepositoryName --region AwsRegionCode
   ```

   Ersetzen Sie im Befehl den folgenden Beispieltext mit Ihrem eigenen:
   + *RepositoryName*— Der Name des privaten Repositorys, für das Sie den Zugriff für einen Lightsail-Container-Service konfigurieren möchten.
   + *AwsRegionCode*— Der AWS-Region Code des privaten Repositorys (zum Beispiel`us-east-1`).

   Beispiel:

   ```
   aws ecr get-repository-policy --repository-name my-private-repo --region us-east-1
   ```

   Sie sollten eine der folgenden Antworten sehen:
   + **RepositoryPolicyNotFoundException**— Ihr privates Repository hat keine Grundsatzerklärung. Wenn Ihr Repository keine Richtlinienanweisung hat, befolgen Sie die Schritte im Abschnitt [Hinzufügen einer Richtlinie zu einem privaten Repository ohne Richtlinienanweisung](#ecr-private-repo-add-policy-no-policy) weiter unten in diesem Leitfaden.  
![\[Antwort auf den get-repository-policy Befehl für ein privates Repository, das keine Richtlinienerklärung hat\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/ecr-no-policy-statement.png)
   + **Eine Repository-Richtlinie wurde gefunden** – Ihr privates Repository verfügt über eine Richtlinienerklärung und wird in der Antwort Ihrer Anfrage angezeigt. Wenn Ihr Repository über eine Richtlinienanweisung verfügt, kopieren Sie die vorhandene Richtlinie und befolgen Sie dann die Schritte im Abschnitt [Hinzufügen einer Richtlinie zu einem privaten Repository mit einer Richtlinienanweisung](#ecr-private-repo-add-policy-existing-policy) weiter unten in diesem Leitfaden.  
![\[Antwort auf den get-repository-policy Befehl für ein privates Repository mit einer Richtlinienerklärung\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/ecr-existing-policy-statement.png)

### Hinzufügen einer Richtlinie zu einem privaten Repository, das keine Richtlinienanweisung hat
<a name="ecr-private-repo-add-policy-no-policy"></a>

Führen Sie das folgende Verfahren aus, um eine Richtlinie zu einem privaten Amazon-ECR-Repository hinzuzufügen, das keine Richtlinienerklärung hat. Die Richtlinie, die Sie hinzufügen, muss den Amazon ECR Image Puller IAM-Rollenprinzipal-ARN Ihres Lightsail-Container-Service enthalten. Dies gewährt Ihrem Container-Service Zugriff auf die Bereitstellung von Images aus dem privaten Repository.

**Wichtig**  
Lightsail fügt automatisch die Amazon ECR-Image-Puller-Rolle zu Ihren privaten Amazon ECR-Repositorys hinzu, wenn Sie die Lightsail-Konsole zur Konfiguration des Zugriffs verwenden. In diesem Fall müssen Sie die Amazon-ECR-Image-Puller-Rolle mithilfe des Verfahrens in diesem Abschnitt nicht manuell zu Ihren privaten Repositories hinzufügen. Weitere Informationen finden Sie weiter oben in [diesem Handbuch unter Verwenden der Lightsail-Konsole zur Verwaltung des Zugriffs auf private Repositorys](#ecr-private-repo-access-lightsail-console).

Sie können mit der AWS CLI eine Richtlinie zu einem privaten Repository hinzufügen. Dazu erstellen Sie eine JSON-Datei, die die Richtlinie enthält, und verweisen dann mit dem `set-repository-policy`-Befehl für Amazon ECR auf diese Datei. Weitere Informationen finden Sie unter [set-repository-policy](https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html) in der Referenz zum *AWS CLI -Befehl*.

**Anmerkung**  
Sie müssen das installieren AWS CLI und für Amazon ECR konfigurieren, bevor Sie mit diesem Verfahren fortfahren können. Weitere Informationen finden Sie unter [Einrichten von Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/get-set-up-for-amazon-ecr.html) im *Amazon-ECR-Benutzerhandbuch*.

1. Öffnen Sie einen Texteditor und fügen Sie die folgende Richtlinienanweisung in eine neue Textdatei ein.

------
#### [ JSON ]

****  

   ```
   { 
     "Version":"2012-10-17",		 	 	 
     "Statement": [
     {
         "Sid": "AllowLightsailPull-ecr-private-repo-demo",
         "Effect": "Allow",
         "Principal": {
           "AWS": "IamRolePrincipalArn"
         },
         "Action": [
           "ecr:BatchGetImage",
           "ecr:GetDownloadUrlForLayer"
         ]
       }
     ]
   }
   ```

------

   *IamRolePrincipalArn*Ersetzen Sie im Text durch den Amazon ECR Image Puller IAM-Rollenprinzipal-ARN Ihres Container-Service, den Sie weiter oben in diesem Handbuch erhalten haben.

1. Speichern Sie die Datei als `ecr-policy.json` an einem zugänglichen Ort auf Ihrem Computer (z. B. `C:\Temp\ecr-policy.json` unter Windows oder `/tmp/ecr-policy.json` unter macOS oder Linux).

1. Notieren Sie sich den Dateipfadspeicherort der `ecr-policy.json`-Datei die erstellt wurde. Sie werden sie später unten in diesem Verfahren in einem Befehl angeben.

1. Öffnen Sie ein Terminal- oder Eingabeaufforderungsfenster.

1. Geben Sie den folgenden Befehl ein, um die Richtlinienanweisung für das private Repository festzulegen, auf das Sie mit Ihrem Container-Service zugreifen möchten.

   ```
   aws ecr set-repository-policy --repository-name RepositoryName --policy-text file://path/to/ecr-policy.json --region AwsRegionCode
   ```

   Ersetzen Sie im Befehl den folgenden Beispieltext mit Ihrem eigenen:
   + *RepositoryName*— Der Name des privaten Repositorys, für das Sie die Richtlinie hinzufügen möchten.
   + *path/to/*— Der Pfad zu der `ecr-policy.json` Datei auf Ihrem Computer, die Sie weiter oben in diesem Handbuch erstellt haben.
   + *AwsRegionCode*— Der AWS-Region Code des privaten Repositorys (zum Beispiel`us-east-1`).

   Beispiele:
   + Unter Windows:

     ```
     aws ecr set-repository-policy --repository-name my-private-repo --policy-text file://C:\Temp\ecr-policy.json --region us-east-1
     ```
   + Unter macOS oder Linux:

     ```
     aws ecr set-repository-policy --repository-name my-private-repo --policy-text file:///tmp/ecr-policy.json --region us-east-1
     ```

   Ihr Container-Service kann jetzt auf Ihr privates Repository und seine Images zugreifen. Um ein Image aus Ihrem Repository zu verwenden, geben Sie den folgenden URI als **Image**-Wert für Ihre Container-Service-Bereitstellung an. Ersetzen Sie in der URI das Beispiel *tag* durch das Tag des Images, das Sie bereitstellen möchten. Weitere Informationen finden Sie unter [Erstellen und Verwalten von Bereitstellungen für Container-Services](amazon-lightsail-container-services-deployments.md).

   ```
   AwsAccountId.dkr.ecr.AwsRegionCode.amazonaws.com/RepositoryName:ImageTag
   ```

   Ersetzen Sie im URI den folgenden Beispieltext mit Ihrem eigenen:
   + *AwsAccountId*— Ihre AWS Konto-ID-Nummer.
   + *AwsRegionCode*— Der AWS-Region Code des privaten Repositorys (zum Beispiel`us-east-1`).
   + *RepositoryName*— Der Name des privaten Repositorys, aus dem ein Container-Image bereitgestellt werden soll.
   + *ImageTag*— Das Tag des Container-Images aus dem privaten Repository, das auf Ihrem Container-Service bereitgestellt werden soll.

   Beispiel:

   ```
   111122223333.dkr.ecr.us-east-1.amazonaws.com/my-private-repo:myappimage
   ```

### Hinzufügen einer Richtlinie zu einem privaten Repository, das über eine Richtlinienanweisung verfügt
<a name="ecr-private-repo-add-policy-existing-policy"></a>

Vervollständigen Sie das folgende Verfahren, um eine Richtlinie einem privaten Amazon-ECR-Repository hinzuzufügen, das eine Richtlinienerklärung hat. Die Richtlinie, die Sie hinzufügen, muss die bestehende Richtlinie und eine neue Richtlinie enthalten, die den Amazon ECR Image Puller IAM-Rollenprinzipal-ARN Ihres Lightsail-Container-Service enthält. Dies behält die vorhandenen Berechtigungen für Ihr privates Repository bei und gewährt Ihrem Container-Service Zugriff auf die Bereitstellung von Images aus dem privaten Repository.

**Wichtig**  
Lightsail fügt automatisch die Amazon ECR-Image-Puller-Rolle zu Ihren privaten Amazon ECR-Repositorys hinzu, wenn Sie die Lightsail-Konsole zur Konfiguration des Zugriffs verwenden. In diesem Fall müssen Sie die Amazon-ECR-Image-Puller-Rolle mithilfe des Verfahrens in diesem Abschnitt nicht manuell zu Ihren privaten Repositories hinzufügen. Weitere Informationen finden Sie weiter oben in [diesem Handbuch unter Verwenden der Lightsail-Konsole zur Verwaltung des Zugriffs auf private Repositorys](#ecr-private-repo-access-lightsail-console).

Sie können mit der AWS CLI eine Richtlinie zu einem privaten Repository hinzufügen. Dazu erstellen Sie eine JSON-Datei, die die vorhandene Richtlinie und die neue Richtlinie enthält. Verweisen Sie dann auf diese Datei mit dem `set-repository-policy`-Befehl für Amazon ECR. Weitere Informationen finden Sie unter [set-repository-policy](https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html) in der Referenz zum *AWS CLI -Befehl*.

**Anmerkung**  
Sie müssen das installieren AWS CLI und für Amazon ECR konfigurieren, bevor Sie mit diesem Verfahren fortfahren können. Weitere Informationen finden Sie unter [Einrichten von Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/get-set-up-for-amazon-ecr.html) im *Amazon-ECR-Benutzerhandbuch*.

1. Öffnen Sie ein Terminal- oder Eingabeaufforderungsfenster.

1. Geben Sie den folgenden Befehl ein, um die Richtlinienanweisung für ein bestimmtes privates Repository abzurufen.

   ```
   aws ecr get-repository-policy --repository-name RepositoryName --region AwsRegionCode
   ```

   Ersetzen Sie im Befehl den folgenden Beispieltext mit Ihrem eigenen:
   + *RepositoryName*— Der Name des privaten Repositorys, für das Sie den Zugriff für einen Lightsail-Container-Service konfigurieren möchten.
   + *AwsRegionCode*— Der AWS-Region Code des privaten Repositorys (zum Beispiel`us-east-1`).

   Beispiel:

   ```
   aws ecr get-repository-policy --repository-name my-private-repo --region us-east-1
   ```

1. Kopieren Sie in der Antwort die vorhandene Richtlinie und fahren Sie mit dem nächsten Schritt fort.

   Sie sollten nur den Inhalt des `policyText` kopieren, der zwischen den doppelten Anführungszeichen erscheint, wie im folgenden Beispiel hervorgehoben.  
![\[Antwort auf den get-repository-policy Befehl für ein privates Repository, für das es keine Grundsatzerklärung gibt\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/ecr-existing-policy-copy-statement.png)

1. Öffnen Sie einen Texteditor und fügen Sie die vorhandene Richtlinie aus Ihrem privaten Repository ein, das Sie im vorherigen Schritt kopiert haben.

   Das Ergebnis sollte wie folgt aussehen:  
![\[Beispiel für eine Richtlinienanweisung JSON-Datei\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/ecr-existing-policy-statement-json.png)

1. Ersetzen Sie im eingefügten Text `\n` durch Zeilenumbrüche und löschen Sie das verbleibende `\`.

   Das Ergebnis sollte wie folgt aussehen:  
![\[Beispiel einer bearbeiteten Richtlinienanweisung JSON-Datei\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/ecr-existing-policy-statement-json-edited.png)

1. Fügen Sie die folgende Richtlinienanweisung am Ende der Text-Datei ein.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowLightsailPull-ecr-private-repo-demo",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "IamRolePrincipalArn"
               },
               "Action": [
                   "ecr:BatchGetImage",
                   "ecr:GetDownloadUrlForLayer"
               ]
           }
       ]
   }
   ```

------

1. *IamRolePrincipalArn*Ersetzen Sie im Text durch den Amazon ECR Image Puller IAM-Rollenprinzipal-ARN Ihres Container-Service, den Sie weiter oben in diesem Handbuch erhalten haben.

   Das Ergebnis sollte wie folgt aussehen:  
![\[Beispiel für vollständige Richtlinienanweisung JSON-Datei\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/ecr-existing-policy-statement-json-completed.png)

1. Speichern Sie die Datei als `ecr-policy.json` an einem zugänglichen Ort auf Ihrem Computer (z. B. `C:\Temp\ecr-policy.json` unter Windows oder `/tmp/ecr-policy.json` unter macOS oder Linux).

1. Notieren Sie sich den Dateipfadspeicherort der `ecr-policy.json`-Datei. Sie werden sie später unten in diesem Verfahren in einem Befehl angeben.

1. Öffnen Sie ein Terminal- oder Eingabeaufforderungsfenster.

1. Geben Sie den folgenden Befehl ein, um die Richtlinienanweisung für das private Repository festzulegen, auf das Sie mit Ihrem Container-Service zugreifen möchten.

   ```
   aws ecr set-repository-policy --repository-name RepositoryName --policy-text file://path/to/ecr-policy.json --region AwsRegionCode
   ```

   Ersetzen Sie im Befehl den folgenden Beispieltext mit Ihrem eigenen:
   + *RepositoryName*— Der Name des privaten Repositorys, für das Sie die Richtlinie hinzufügen möchten.
   + *path/to/*— Der Pfad zu der `ecr-policy.json` Datei auf Ihrem Computer, die Sie weiter oben in diesem Handbuch erstellt haben.
   + *AwsRegionCode*— Der AWS-Region Code des privaten Repositorys (zum Beispiel`us-east-1`).

   Beispiele:
   + Unter Windows:

     ```
     aws ecr set-repository-policy --repository-name my-private-repo --policy-text file://C:\Temp\ecr-policy.json --region us-east-1
     ```
   + Unter macOS oder Linux:

     ```
     aws ecr set-repository-policy --repository-name my-private-repo --policy-text file:///tmp/ecr-policy.json --region us-east-1
     ```

   Sie sollten eine Antwort ähnlich dem folgenden Beispiel erhalten.  
![\[Antwort auf den set-repository-policy Befehl\]](http://docs.aws.amazon.com/de_de/lightsail/latest/userguide/images/ecr-set-policy-statement-response.png)

   Wenn Sie den `get-repository-policy`-Befehl erneut durchführen, sollten Sie die neue zusätzliche Richtlinienerklärung in Ihrem privaten Repository sehen. Ihr Container-Service kann jetzt auf Ihr privates Repository und seine Images zugreifen. Um ein Image aus Ihrem Repository zu verwenden, geben Sie den folgenden URI als **Image**-Wert für Ihre Container-Service-Bereitstellung an. Ersetzen Sie in der URI das Beispiel *tag* durch das Tag des Images, das Sie bereitstellen möchten. Weitere Informationen finden Sie unter [Erstellen und Verwalten von Bereitstellungen für Container-Services](amazon-lightsail-container-services-deployments.md).

   ```
   AwsAccountId.dkr.ecr.AwsRegionCode.amazonaws.com/RepositoryName:ImageTag
   ```

   Ersetzen Sie im URI den folgenden Beispieltext mit Ihrem eigenen:
   + *AwsAccountId*— Ihre AWS Konto-ID-Nummer.
   + *AwsRegionCode*— Der AWS-Region Code des privaten Repositorys (zum Beispiel`us-east-1`).
   + *RepositoryName*— Der Name des privaten Repositorys, aus dem ein Container-Image bereitgestellt werden soll.
   + *ImageTag*— Das Tag des Container-Images aus dem privaten Repository, das auf Ihrem Container-Service bereitgestellt werden soll.

   Beispiel:

   ```
   111122223333.dkr.ecr.us-east-1.amazonaws.com/my-private-repo:myappimage
   ```