Bieten Sie Benutzern Zugriff auf benutzerdefinierte Bilder - Amazon SageMaker

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.

Bieten Sie Benutzern Zugriff auf benutzerdefinierte Bilder

Diese Dokumentation enthält step-by-step Anweisungen, wie Sie Ihren Benutzern Zugriff auf benutzerdefinierte Bilder für ihre Code-Editor-Umgebungen gewähren können. Sie können die Informationen auf dieser Seite verwenden, um benutzerdefinierte Umgebungen für die Workflows Ihrer Benutzer zu erstellen. Der Prozess beinhaltet die Verwendung von:

  • Docker

  • AWS Command Line Interface

  • Amazon Elastic Container Registry

  • Amazon SageMaker AWS Management Console

Nachdem sie die Anweisungen auf dieser Seite befolgt haben, haben Code Editor-Benutzer auf der SageMaker Amazon-Domain von ihren Code-Editor-Bereichen aus Zugriff auf das benutzerdefinierte Image und die Umgebung, um ihre maschinellen Lern-Workflows zu unterstützen.

Wichtig

Auf dieser Seite wird davon ausgegangen, dass Sie das AWS Command Line Interface und auf Ihrem lokalen Computer Docker installiert haben.

Damit Ihre Benutzer ihr Image erfolgreich im Code-Editor ausführen können, müssen Sie wie folgt vorgehen:

Damit Ihre Benutzer das Image erfolgreich ausführen
  1. Erstellen Sie das Dockerfile

  2. Erstellen Sie das Image aus dem Dockerfile

  3. Laden Sie das Bild in Amazon Elastic Container Registry hoch

  4. Hängen Sie das Bild an Ihre SageMaker Amazon-Domain an

  5. Lassen Sie Ihre Benutzer von ihrem Code-Editor-Bereich aus auf das Bild zugreifen

Schritt 1: Erstellen Sie das Dockerfile

Erstellen Sie ein Dockerfile, um die Schritte zu definieren, die zum Erstellen der Umgebung erforderlich sind, die für die Ausführung der Anwendung im Container Ihres Benutzers erforderlich ist.

Wichtig

Ihr Dockerfile muss die unter angegebenen Spezifikationen erfüllen. Dockerfile-Spezifikationen

Beispiele für Dockerfiles im richtigen Format finden Sie unter. Dockerfile-Beispiele

Schritt 2: Erstellen Sie das Dockerfile

Erstellen Sie Ihr Image im selben Verzeichnis wie Ihr Dockerfile mit dem folgenden Befehl:

docker build -t username/imagename:tag your-account-id.dkr.ecr.AWS-Region.amazonaws.com/your-repository-name:tag
Wichtig

Ihr Bild muss im folgenden Format markiert sein: 123456789012.dkr.ecr.your-region.amazonaws.com/your-repository-name:tag

Andernfalls können Sie es nicht in ein Amazon Elastic Container Registry-Repository übertragen.

Schritt 3: Push des Images in das Amazon Elastic Container Registry-Repository

Nachdem Sie Ihr Image erstellt haben, melden Sie sich mit dem folgenden Befehl bei Ihrem ECR Amazon-Repository an:

aws ecr get-login-password --region AWS-Region | docker login --username AWS --password-stdin 123456789012.dkr.ecr.AWS-Region.amazonaws.com

Nachdem Sie sich angemeldet haben, übertragen Sie Ihr Dockerfile mit dem folgenden Befehl:

docker push 123456789012.dkr.ecr.AWS-Region.amazonaws.com/your-repository-name:tag

Schritt 4: Hängen Sie ein Bild an die SageMaker Amazon-Domain Ihrer Benutzer an

Nachdem Sie das Bild übertragen haben, müssen Sie von Ihrer SageMaker Amazon-Domain aus entweder über die SageMaker Konsole oder über das darauf zugreifen AWS CLI.

Hängen Sie das Bild über die SageMaker Konsole an

Gehen Sie wie folgt vor, um das Image über die SageMaker Konsole an eine SageMaker Domain anzuhängen:

  1. Öffnen Sie die SageMaker Konsole.

  2. Wählen Sie unter Admin-Konfigurationen Domains aus.

  3. Wählen Sie aus der Liste der Domänen eine Domäne aus.

  4. Öffnen Sie die Registerkarte Umgebung.

  5. Wählen Sie für Benutzerdefinierte Bilder für persönliche Studio-Apps die Option Bild anhängen.

  6. Geben Sie die Bildquelle an. Sie können ein neues Bild erstellen oder ein vorhandenes Bild auswählen.

  7. Wählen Sie Weiter.

  8. Wählen Sie den Code-Editor als Anwendungstyp.

  9. Wählen Sie Absenden aus.

Hängen Sie das Bild an, indem Sie AWS CLI

Gehen Sie wie folgt vor, um das Bild über eine SageMaker Domain anzuhängen AWS CLI :

  1. Erstellen Sie ein SageMaker Bild. Der Rolle ARN muss die AmazonSageMakerFullAccess Richtlinie angehängt sein.

    aws sagemaker create-image \ --image-name code-editor-custom-image \ --role-arn arn:aws:iam::account-id:role/service-role/execution-role
  2. Erstellen Sie eine SageMaker Image-Version aus dem Image. Übergeben Sie den eindeutigen Tag-Wert, den Sie ausgewählt haben, als Sie das Bild an Amazon gesendet habenECR.

    aws sagemaker create-image-version \ --image-name code-editor-custom-image \ --base-image repository-uri:tag
  3. Erstellen Sie eine Konfigurationsdatei mit dem Namenapp-image-config-input.json. Die Konfiguration des Anwendungs-Images wird als Konfiguration für die Ausführung eines SageMaker Images als Code-Editor-Anwendung verwendet. Sie können hier auch Ihre ContainerConfigArgumente angeben.

    { "AppImageConfigName": "code-editor-app-image-config", "CodeEditorAppImageConfig": { "ContainerConfig": {} } }
  4. Erstellen Sie das AppImageConfig mithilfe der Anwendungs-Image-Konfigurationsdatei, die Sie erstellt haben.

    aws sagemaker create-app-image-config \ --cli-input-json file://app-image-config-input.json
  5. Erstellen Sie eine Konfigurationsdatei mit dem Namen updateDomain.json. Achten Sie darauf, Ihre Domain-ID anzugeben.

    { "DomainId": "domain-id", "DefaultUserSettings": { "CodeEditorAppSettings": { "CustomImages": [ { "ImageName": "code-editor-custom-image", "AppImageConfigName": "code-editor-app-image-config" } ] } } }
  6. Rufen Sie den UpdateDomain Befehl mit der Konfigurationsdatei als Eingabe auf.

    Anmerkung

    Sie müssen alle Anwendungen in Ihrer Domain löschen, bevor Sie die Domain mit dem neuen Image aktualisieren. Beachten Sie, dass Sie nur Anwendungen löschen müssen. Benutzerprofile oder gemeinsam genutzte Bereiche müssen Sie nicht löschen. Um Anweisungen zum Löschen von Anwendungen zu erhalten, wählen Sie eine der folgenden Optionen.

    aws sagemaker update-domain --cli-input-json file://updateDomain.json

Schritt 5: Lassen Sie Ihre Benutzer von ihrem Code-Editor-Bereich aus auf das Bild zugreifen

Ihre Benutzer können jetzt das Bild, das Sie an ihre Domain angehängt haben, in ihrem Code-Editor-Bereich auswählen.

Weitere Informationen zur Auswahl eines benutzerdefinierten Bilds finden Sie unterStarten Sie eine Code-Editor-Anwendung in Studio.