

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.

# So funktioniert Bring Your Own Image
<a name="studio-updated-byoi-how-to"></a>

Auf den folgenden Seiten finden Sie Anweisungen zum Einbinden Ihres eigenen benutzerdefinierten Images. Stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind, bevor Sie fortfahren.

## Voraussetzungen
<a name="studio-updated-byoi-how-to-prerequisites"></a>

Sie müssen die folgenden Voraussetzungen erfüllen, um Ihr eigenes Image auf Amazon SageMaker AI zu übertragen.
+ Richten Sie die Docker-Anwendung ein. Weitere Informationen finden Sie unter [Erste Schritte](https://docs.docker.com/get-started/) in der *Docker-Dokumentation*.
+ Installieren Sie die neueste Version, AWS CLI indem Sie die Schritte unter [Erste Schritte mit dem AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) im *AWS Command Line Interface Benutzerhandbuch für Version 2 befolgen*.
+ Berechtigungen für den Zugriff auf den Service Amazon Elastic Container Registry (Amazon ECR). Weitere Informationen finden Sie unter [Amazon-ECR-verwaltete Richtlinien](https://docs.aws.amazon.com/AmazonECR/latest/userguide/ecr_managed_policies.html) im *Benutzerhandbuch für Amazon ECR*.
+ Eine AWS Identity and Access Management Rolle, der die [AmazonSageMakerFullAccess](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerFullAccess)Richtlinie angehängt ist.

**Topics**
+ [Voraussetzungen](#studio-updated-byoi-how-to-prerequisites)
+ [Erstellen eines benutzerdefinierten Images und Übertragen auf Amazon ECR](studio-updated-byoi-how-to-prepare-image.md)
+ [Anfügen Ihres benutzerdefinierten Images an Ihre Domain](studio-updated-byoi-how-to-attach-to-domain.md)
+ [Aktualisieren der Container-Konfiguration](studio-updated-byoi-how-to-container-configuration.md)

# Erstellen eines benutzerdefinierten Images und Übertragen auf Amazon ECR
<a name="studio-updated-byoi-how-to-prepare-image"></a>

Diese Seite enthält Anweisungen zum Erstellen einer lokalen Dockerfile, zum Erstellen des Container-Images und zum Hinzufügen zu Amazon Elastic Container Registry (Amazon ECR).

**Anmerkung**  
In den folgenden Beispielen werden die Tags nicht angegeben und das Tag `latest` wird standardmäßig angewendet. Wenn Sie ein Tag angeben möchten, müssen Sie `:tag` an das Ende der Image-Namen anhängen. Weitere Informationen finden Sie unter [Docker-Image-Tag](https://docs.docker.com/reference/cli/docker/image/tag/) in der *Docker-Dokumentation*.

**Topics**
+ [Erstellen einer Dockerfile und Erstellen des Container-Images](#studio-updated-byoi-how-to-create-local-dockerfile)
+ [Hinzufügen eines Docker-Images zu Amazon ECR](#studio-updated-byoi-add-container-image)

## Erstellen einer Dockerfile und Erstellen des Container-Images
<a name="studio-updated-byoi-how-to-create-local-dockerfile"></a>

Verwenden Sie folgende Anweisungen zum Erstellen einer Dockerfile mit der gewünschten Software und den gewünschten Abhängigkeiten.

**So erstellen Sie die Dockerfile**

1. Stellen Sie zunächst Ihre Variablen für die folgenden AWS CLI Befehle ein.

   ```
   LOCAL_IMAGE_NAME=local-image-name
   ```

   `local-image-name` ist der Name des Container-Images auf Ihrem lokalen Gerät, das Sie hier definieren.

1. Erstellen Sie ein textbasiertes Dokument mit Namen `Dockerfile`, das den Spezifikationen unter [Benutzerdefinierte Image-Daten](studio-updated-byoi-specs.md) entspricht.

   `Dockerfile`-Beispiele für unterstützte Anwendungen finden Sie unter [Dockerfile-Beispiele](studio-updated-byoi-specs.md#studio-updated-byoi-specs-dockerfile-templates).
**Anmerkung**  
Wenn Sie Ihr eigenes Image in SageMaker Unified Studio verwenden, müssen Sie die [Dockerfile-Spezifikationen](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/byoi-specifications.html) im *Amazon SageMaker Unified Studio-Benutzerhandbuch* befolgen.  
`Dockerfile`Beispiele für SageMaker Unified Studio finden Sie im [Dockerfile-Beispiel](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/byoi-specifications.html#byoi-specifications-example) im *Amazon SageMaker Unified Studio-Benutzerhandbuch*.

1. Erstellen Sie in dem Verzeichnis, das Ihre `Dockerfile` enthält, das Docker-Image mit dem folgenden Befehl. Der Punkt (`.`) gibt an, dass sich die `Dockerfile` im Kontext des Build-Befehls befinden sollte.

   ```
   docker build -t ${LOCAL_IMAGE_NAME} .
   ```

   Nach Abschluss des Builds können Sie die Informationen zu Ihrem Container-Image mit dem folgenden Befehl auflisten.

   ```
   docker images
   ```

1. (Optional) Sie können Ihr Image mit dem folgenden Befehl testen.

   ```
   docker run -it ${LOCAL_IMAGE_NAME}
   ```

   In der Ausgabe werden Sie feststellen, dass Ihr Server unter einer URL wie `http://127.0.0.1:8888/...` läuft. Sie können das Image testen, indem Sie die URL in den Browser kopieren. 

   Sollte dies nicht funktionieren, müssen Sie möglicherweise `-p port:port` in den Befehl „docker run“ einfügen. Diese Option ordnet den freigegebenen Port auf dem Container einem Port auf dem Hostsystem zu. Weitere Informationen zur Docker-Ausführung finden Sie unter [Ausführen von Containern](https://docs.docker.com/engine/containers/run/) in der *Docker-Dokumentation*.

   Nachdem Sie überprüft haben, dass der Server ordnungsgemäß funktioniert, können Sie den Server anhalten und alle Kernel herunterfahren, bevor Sie fortfahren. Die Anweisungen sind in der Ausgabe sichtbar.

## Hinzufügen eines Docker-Images zu Amazon ECR
<a name="studio-updated-byoi-add-container-image"></a>

Um ein Container-Image zu Amazon ECR hinzuzufügen, müssen Sie die folgenden Schritte ausführen.
+ Erstellen Sie ein Amazon-ECR-Repository.
+ Melden Sie sich bei Ihrem Standard-Registry an.
+ Übertragen Sie das Image in das Amazon-ECR-Repository.

**Anmerkung**  
Das Amazon ECR-Repository muss sich in derselben AWS-Region Domain befinden, an die Sie das Bild anhängen.

**So erstellen Sie ein Container-Image und übertragen es an Amazon ECR**

1. Stellen Sie zunächst Ihre Variablen für die folgenden AWS CLI Befehle ein.

   ```
   ACCOUNT_ID=account-id
   REGION=aws-region
   ECR_REPO_NAME=ecr-repository-name
   ```
   + `account-id` ist Ihre Konto-ID. Sie finden dies oben rechts auf jeder AWS Konsolenseite. Zum Beispiel die [SageMaker AI-Konsole](https://console.aws.amazon.com/sagemaker).
   + `aws-region`ist die AWS-Region Ihrer Amazon SageMaker AI-Domain. Sie finden dies oben rechts auf jeder AWS Konsolenseite. 
   + `ecr-repository-name` ist der Name Ihres Repositorys von Amazon Elastic Container Registry, den Sie hier definieren. Ihre Amazon-ECR-Repositorys finden Sie in der [Amazon-ECR-Konsole](https://console.aws.amazon.com/ecr).

1. Melden Sie sich bei Amazon ECR und dann bei Docker an.

   ```
   aws ecr get-login-password \
       --region ${REGION} | \
       docker login \
       --username AWS \
       --password-stdin ${ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com
   ```

   Bei erfolgreicher Authentifizierung erhalten Sie eine Meldung über die erfolgreiche Anmeldung.
**Wichtig**  
Bei einem Fehler müssen Sie möglicherweise die neueste AWS CLI-Version installieren bzw. auf diese aktualisieren. Weitere Informationen finden Sie unter [Installieren der AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) im *AWS Command Line Interface -Benutzerhandbuch*.

1. Markieren Sie das Image in einem mit Amazon ECR kompatiblen Format, um es in Ihr Repository zu übertragen.

   ```
   docker tag \
       ${LOCAL_IMAGE_NAME} \
       ${ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com/${ECR_REPO_NAME}
   ```

1. Erstellen Sie ein Amazon ECR-Repository unter Verwendung des AWS CLI. Informationen zum Erstellen des Repositorys mithilfe der Amazon-ECR-Konsole finden Sie unter [Erstellen eines privaten Amazon-ECR-Repositorys zum Speichern von Images](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html).

   ```
   aws ecr create-repository \
       --region ${REGION} \
       --repository-name ${ECR_REPO_NAME}
   ```

1. Übertragen Sie das Image in Ihr Amazon-ECR-Repository: Sie können das Docker-Image auch markieren.

   ```
   docker push ${ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com/${ECR_REPO_NAME}
   ```

Sobald das Image erfolgreich zu Ihrem Amazon-ECR-Repository hinzugefügt wurde, können Sie es in der [Amazon-ECR-Konsole](https://console.aws.amazon.com/ecr) anzeigen.

# Anfügen Ihres benutzerdefinierten Images an Ihre Domain
<a name="studio-updated-byoi-how-to-attach-to-domain"></a>

Diese Seite enthält Anweisungen zum Anhängen Ihres benutzerdefinierten Images an Ihre Domain. Gehen Sie wie folgt vor, um mit der Amazon SageMaker AI-Konsole zu Ihrer Domain zu navigieren und den Vorgang **Bild anhängen** zu starten.

Bei den folgenden Anweisungen wird davon ausgegangen, dass Sie ein Bild in ein Amazon ECR-Repository in derselben Domain AWS-Region wie Ihre Domain übertragen haben. Falls dies noch nicht geschehen ist, finden Sie weitere Informationen unter [Erstellen eines benutzerdefinierten Images und Übertragen auf Amazon ECR](studio-updated-byoi-how-to-prepare-image.md).

Wenn Sie ein Image anhängen möchten, haben Sie zwei Möglichkeiten:
+ Ein **neues Bild** anhängen: Mit dieser Option werden ein Bild und eine Image-Version in Ihrem SageMaker AI-Image-Speicher erstellt und dann an Ihre Domain angehängt.
**Anmerkung**  
Wenn Sie den BYOI-Prozess fortsetzen möchten, verwenden Sie von [Erstellen eines benutzerdefinierten Images und Übertragen auf Amazon ECR](studio-updated-byoi-how-to-prepare-image.md) aus die Option **Neues Image**.
+ Ein **vorhandenes Bild** anhängen: Wenn Sie Ihr gewünschtes benutzerdefiniertes Bild bereits im SageMaker AI-Bildspeicher erstellt haben, verwenden Sie diese Option. Durch diese Option wird ein vorhandenes benutzerdefiniertes Image an Ihre Domain angehängt. Informationen zum Anzeigen Ihrer benutzerdefinierten Bilder im SageMaker AI-Bildspeicher finden Sie unter[Anzeigen von benutzerdefinierten Image-Details (Konsole)](studio-updated-byoi-view-images.md#studio-updated-byoi-view-images-console).

------
#### [ New image ]

**So fügen Sie ein neues Image an die Domain an**

1. Öffnen Sie die [SageMaker AI-Konsole](https://console.aws.amazon.com/sagemaker).

1. Erweitern Sie den Abschnitt **Admin-Konfigurationen**, falls dies noch nicht geschehen ist.

1. Wählen Sie unter **Admin-Konfigurationen** **Domains** aus.

1. Wählen Sie aus der Liste der **Domains** die Domain aus, an die das Image angehängt werden soll.
**Anmerkung**  
Wenn Sie das Image an ein SageMaker Unified Studio-Projekt anhängen und weitere Informationen zur zu verwendenden Domain benötigen, finden Sie weitere Informationen unter [Anzeigen der mit Ihrem Projekt verknüpften SageMaker KI-Domänendetails](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/view-project-details.html#view-project-details-smai-domain).

1. Öffnen Sie die Registerkarte **Umgebung**.

1. Wählen Sie im Abschnitt **Benutzerdefinierte Images für persönliche Studio-Apps** die Option **Image anhängen** aus.

1. Wählen Sie als **Image-Quelle** die Option **Neues Image** aus.

1. Fügen Sie die URI des Amazon-ECR-Images ein. Das Format lautet wie folgt.

   ```
   account-id.dkr.ecr.aws-region.amazonaws.com/repository-name:tag
   ```

   1. Um die URI Ihres Amazon-ECR-Images zu erhalten, navigieren Sie zu Ihrer Seite mit den privaten [Amazon-ECR-Repositorys](https://console.aws.amazon.com/ecr/private-registry/repositories).

   1. Wählen Sie den Link mit dem Repository-Namen aus.

   1. Wählen Sie das Symbol **URI kopieren** aus, das Ihrer Image-Version entspricht (**Image-Tag**).

1. Befolgen Sie die weiteren Anweisungen, um Ihr individuelles Image hinzuzufügen.
**Anmerkung**  
Stellen Sie sicher, dass Sie den Anwendungstyp verwenden, der Ihrer `Dockerfile` entspricht. Weitere Informationen finden Sie unter [Dockerfile-Beispiele](studio-updated-byoi-specs.md#studio-updated-byoi-specs-dockerfile-templates).

Sobald das Image erfolgreich an Ihre Domain angefügt wurde, können Sie es auf der Registerkarte **Umgebung** anzeigen.

------
#### [ Existing image ]

**So fügen Sie ein bestehendes Image an Ihre Domain an**

1. Öffnen Sie die [SageMaker AI-Konsole](https://console.aws.amazon.com/sagemaker).

1. Erweitern Sie den Abschnitt **Admin-Konfigurationen**, falls dies noch nicht geschehen ist.

1. Wählen Sie unter **Admin-Konfigurationen** **Domains** aus.

1. Wählen Sie aus der Liste der **Domains** die Domain aus, an die das Image angehängt werden soll.
**Anmerkung**  
Wenn Sie das Image an ein SageMaker Unified Studio-Projekt anhängen und weitere Informationen zur zu verwendenden Domain benötigen, finden Sie weitere Informationen unter [Anzeigen der mit Ihrem Projekt verknüpften SageMaker KI-Domänendetails](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/view-project-details.html#view-project-details-smai-domain).

1. Öffnen Sie die Registerkarte **Umgebung**.

1. Wählen Sie im Abschnitt **Benutzerdefinierte Images für persönliche Studio-Apps** die Option **Image anhängen** aus.

1. Wählen Sie als **Image-Quelle** die Option **Bestehendes Image** aus.

1. Wählen Sie ein vorhandenes Image und eine Image-Version aus dem SageMaker AI-Imagespeicher aus.

   Wenn Sie Ihre Image-Version nicht anzeigen können, müssen Sie möglicherweise eine erstellen. Weitere Informationen finden Sie unter [Anzeigen von benutzerdefinierten Image-Details (Konsole)](studio-updated-byoi-view-images.md#studio-updated-byoi-view-images-console).

1. Befolgen Sie die weiteren Anweisungen, um Ihr individuelles Image hinzuzufügen.
**Anmerkung**  
Stellen Sie sicher, dass Sie den Anwendungstyp verwenden, der Ihrer `Dockerfile` entspricht. Weitere Informationen finden Sie unter [Dockerfile-Beispiele](studio-updated-byoi-specs.md#studio-updated-byoi-specs-dockerfile-templates).

Sobald das Image erfolgreich an Ihre Domain angefügt wurde, können Sie es auf der Registerkarte **Umgebung** anzeigen.

------

Sobald Ihr Image erfolgreich an Ihre Domain angefügt wurde, können die Domain-Benutzer das Image für ihre Anwendung auswählen. Weitere Informationen finden Sie unter [Starten eines benutzerdefinierten Images in Studio](studio-updated-byoi-how-to-launch.md).

**Anmerkung**  
Wenn Sie Ihrem SageMaker Unified Studio-Projekt ein benutzerdefiniertes Image angehängt haben, müssen Sie die Anwendung von SageMaker Unified Studio aus starten. Weitere Informationen finden Sie unter [Starten Ihres benutzerdefinierten Images](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/byoi-launch-custom-image.html) im *Amazon SageMaker Unified Studio-Benutzerhandbuch*.

# Aktualisieren der Container-Konfiguration
<a name="studio-updated-byoi-how-to-container-configuration"></a>

Sie können benutzerdefinierte Docker-Images in Ihre Workflows für Machine Learning integrieren. Ein wichtiger Aspekt bei der Anpassung dieser Images ist die Konfiguration der Container-Konfigurationen oder [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ContainerConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ContainerConfig.html). Die folgende Seite enthält ein Beispiel für die Konfiguration der `ContainerConfig`. 

Ein Einstiegspunkt ist der Befehl oder das Skript, der bzw. das ausgeführt wird, wenn der Container gestartet wird. Mit benutzerdefinierten Einstiegspunkten können Sie Ihre Umgebung einrichten, Services initialisieren oder alle erforderlichen Einstellungen vornehmen, bevor Ihre Anwendung gestartet wird. 

Dieses Beispiel enthält Anweisungen zur Konfiguration eines benutzerdefinierten Einstiegspunkts für Ihre JupyterLab Anwendung mithilfe von. AWS CLI In diesem Beispiel wird davon ausgegangen, dass Sie bereits ein benutzerdefiniertes Image und eine Domain erstellt haben. Detaillierte Anweisungen finden Sie unter [Anfügen Ihres benutzerdefinierten Images an Ihre Domain](studio-updated-byoi-how-to-attach-to-domain.md).

1. Stellen Sie zunächst Ihre Variablen für die folgenden AWS CLI Befehle ein.

   ```
   APP_IMAGE_CONFIG_NAME=app-image-config-name
   ENTRYPOINT_FILE=entrypoint-file-name
   ENV_KEY=environment-key
   ENV_VALUE=environment-value
   REGION=aws-region
   DOMAIN_ID=domain-id
   IMAGE_NAME=custom-image-name
   IMAGE_VERSION=custom-image-version
   ```
   + `app-image-config-name` ist der Name Ihrer Anwendungs-Image-Konfiguration.
   + `entrypoint-file-name` ist der Name des Einstiegspunkt-Skripts Ihres Containers. Beispiel, `entrypoint.sh`.
   + `environment-key` ist der Name der Umgebungsvariable.
   + `environment-value` ist der Wert, der Ihrer Umgebungsvariablen zugewiesen ist.
   + `aws-region`ist die AWS-Region Ihrer Amazon SageMaker AI-Domain. Sie finden dies oben rechts auf jeder AWS Konsolenseite. 
   + `domain-id` ist Ihre Domain-ID. Informationen zur Anzeige Ihrer Domains finden Sie unter [Anzeigen von Domains](domain-view.md).
   + `custom-image-name` ist der Name Ihres benutzerdefinierten Images. Informationen zu Ihren benutzerdefinierten Images finden Sie unter [Anzeigen von benutzerdefinierten Image-Details (Konsole)](studio-updated-byoi-view-images.md#studio-updated-byoi-view-images-console).

     Wenn Sie die Anweisungen unter [Anfügen Ihres benutzerdefinierten Images an Ihre Domain](studio-updated-byoi-how-to-attach-to-domain.md) befolgt haben, möchten Sie möglicherweise denselben Image-Namen verwenden, den Sie bei diesem Vorgang verwendet haben.
   + `custom-image-version` ist die Versionsnummer Ihres benutzerdefinierten Images. Dies sollte eine ganze Zahl sein, die die Version Ihres Images angibt. Informationen zu Ihren benutzerdefinierten Images finden Sie unter [Anzeigen von benutzerdefinierten Image-Details (Konsole)](studio-updated-byoi-view-images.md#studio-updated-byoi-view-images-console).

1. Verwenden Sie die [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAppImageConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAppImageConfig.html)-API, um eine Image-Konfiguration zu erstellen.

   ```
   aws sagemaker create-app-image-config \
       --region ${REGION} \
       --app-image-config-name "${APP_IMAGE_CONFIG_NAME}" \
       --jupyter-lab-app-image-config "ContainerConfig = {
           ContainerEntrypoint = "${ENTRYPOINT_FILE}", 
           ContainerEnvironmentVariables = {
               "${ENV_KEY}"="${ENV_VALUE}"
           }
       }"
   ```

1. Verwenden Sie die [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateDomain.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateDomain.html)-API, um die Standardeinstellungen für Ihre Domain zu aktualisieren. Dadurch werden das benutzerdefinierte Image sowie die Konfiguration des Anwendungs-Images angefügt. 

   ```
   aws sagemaker update-domain \
       --region ${REGION} \
       --domain-id "${DOMAIN_ID}" \
       --default-user-settings "{
           \"JupyterLabAppSettings\": {
               \"CustomImages\": [
                   {
                       \"ImageName\": \"${IMAGE_NAME}\",
                       \"ImageVersionNumber\": ${IMAGE_VERSION},
                       \"AppImageConfigName\": \"${APP_IMAGE_CONFIG_NAME}\"
                   }
               ]
           }
       }"
   ```