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.
Erste Schritte mit dem lokalen Modus
In den folgenden Abschnitten werden die Schritte beschrieben, die für den Einstieg in den lokalen Modus in Amazon SageMaker Studio erforderlich sind, darunter:
-
Erfüllen der Voraussetzungen
-
Festlegen von
EnableDockerAccess -
Docker-Installation
Voraussetzungen
Erfüllen Sie die folgenden Voraussetzungen, um den lokalen Modus in Studio-Anwendungen zu verwenden:
-
Um Images aus einem Repository von Amazon Elastic Container Registry abzurufen, muss das Konto, in dem das Amazon-ECR-Image gehostet wird, eine Zugriffsberechtigung für die Ausführungsrolle des Benutzers bereitstellen. Die Ausführungsrolle der Domain muss auch Amazon-ECR-Zugriff ermöglichen.
-
Stellen Sie mithilfe des folgenden Befehls sicher, dass Sie die neueste Version des Studio Python-SDK verwenden:
pip install -U sagemaker -
Um den lokalen Modus und Docker-Funktionen zu verwenden, legen Sie die folgenden Parameter der
DockerSettingsder Domain mithilfe der AWS Command Line Interface (AWS CLI) fest:EnableDockerAccess : ENABLED -
Mit
EnableDockerAccesskönnen Sie auch steuern, ob Benutzer in der Domain den lokalen Modus verwenden dürfen. Standardmäßig sind der lokale Modus und Docker-Funktionen in Studio-Anwendungen nicht zulässig. Weitere Informationen finden Sie unter Festlegen von EnableDockerAccess. -
Installieren Sie die Docker-CLI in der Studio-Anwendung, indem Sie die Schritte unter Docker-Installation befolgen.
-
Stellen Sie für Rootless-Docker-Konfiguration sicher, dass Ihre VPC über geeignete Endpunkte und Routing-Einstellungen für die von Ihnen gewünschten Docker-Registrys verfügt.
Festlegen von EnableDockerAccess
In den folgenden Abschnitten wird beschrieben, wie Sie EnableDockerAccess festlegen, wenn die Domain über öffentlichen Internetzugang verfügt oder sich im Modus VPC-only befindet.
Anmerkung
Änderungen an EnableDockerAccess gelten nur für Anwendungen, die nach der Aktualisierung der Domain erstellt wurden. Sie müssen nach dem Aktualisieren der Domain eine neue Anwendung erstellen.
Öffentlicher Internetzugang
Die folgenden Beispielbefehle veranschaulichen, wie Sie EnableDockerAccess beim Erstellen einer neuen Domain oder beim Aktualisieren einer bestehenden Domain mit öffentlichem Internetzugang festlegen:
# create new domain aws --regionregion\ sagemaker create-domain --domain-namedomain-name\ --vpc-idvpc-id\ --subnet-idssubnet-ids\ --auth-mode IAM \ --default-user-settings "ExecutionRole=execution-role" \ --domain-settings '{"DockerSettings": {"EnableDockerAccess": "ENABLED"}}' \ --query DomainArn \ --output text # update domain aws --regionregion\ sagemaker update-domain --domain-iddomain-id\ --domain-settings-for-update '{"DockerSettings": {"EnableDockerAccess": "ENABLED"}}'
VPC-only Modus
Wenn Sie eine Domain im VPC-only-Modus verwenden, werden Image-Push- und Pull-Anfragen von Docker über die Service-VPC und nicht über die vom Kunden konfigurierte VPC weitergeleitet. Aufgrund dieser Funktionalität können Administratoren eine Liste vertrauenswürdiger AWS-Konten konfigurieren, an die Benutzer Push- und Pull-Anfragen von Amazon ECR Docker durchführen können.
Wenn eine Docker Image-Push- oder Pull-Anfrage an eine Person gestellt wird AWS-Konto , die nicht in der Liste der vertrauenswürdigen Dateien aufgeführt ist AWS-Konten, schlägt die Anfrage fehl. DockerPull- und Push-Operationen außerhalb von Amazon Elastic Container Registry (Amazon ECR) werden im VPC-only Modus nicht unterstützt.
Folgendes wird standardmäßig AWS-Konten als vertrauenswürdig eingestuft:
-
Das Konto, das die SageMaker AI-Domain hostet.
-
SageMaker AI-Konten, die die folgenden SageMaker Bilder hosten:
-
DLC-Framework-Images
-
SklearnSpark, Bilder XGBoost verarbeiten
-
Um eine Liste weiterer vertrauenswürdiger Dateien zu konfigurieren AWS-Konten, geben Sie den VpcOnlyTrustedAccounts Wert wie folgt an:
aws --regionregion\ sagemaker update-domain --domain-iddomain-id\ --domain-settings-for-update '{"DockerSettings": {"EnableDockerAccess": "ENABLED", "VpcOnlyTrustedAccounts": ["account-list"]}}'
Anmerkung
Wenn Rootless-Docker-Konfiguration aktiviert ist, wird VpcOnlyTrustedAccounts ignoriert und der Docker-Datenverkehr wird durch Ihre VPC-Konfiguration geleitet, sodass Sie auf jede Registrierung zugreifen können, die Ihre VPC erreichen kann.
Rootless-Docker-Konfiguration
Wenn RootlessDocker aktiviert ist, verwendet Studio einen Rootless-Docker-DaemonRootlessDocker sind:
-
Auf Container-Ports kann über die Docker-Gateway-IP (
172.17.0.1) statt über localhost zugegriffen werden. -
Ihre VPC-Konfiguration bestimmt, auf welche Registrys für Docker-Operationen zugegriffen werden kann.
VpcOnlyTrustedAccountswird ignoriert und Docker-Datenverkehr wird durch Ihre VPC-Konfiguration geleitet.
Um Rootless Docker zu verwenden, müssen Sie und EnableDockerAccess und RootlessDocker auf ENABLEDfür Ihre DockerSettings festlegen. In den obigen Festlegen von EnableDockerAccess-Beispielen können Sie beispielsweise Ihre Domain-Einstellungen so ändern, dass sie Folgendes beinhalten:
'{"DockerSettings": {"EnableDockerAccess": "ENABLED", "RootlessDocker": "ENABLED"}}'
Docker-Installation
Zur Verwendung von Docker müssen Sie Docker manuell vom Terminal Ihrer Studio-Anwendung aus installieren. Die Schritte zur Installation von Docker unterscheiden sich, je nachdem, ob die Domain Zugang zum Internet hat oder nicht.
Internetzugang
Wenn die Domain mit öffentlichem Internetzugang oder im VPC-only-Modus mit eingeschränktem Internetzugang erstellt wurde, befolgen Sie die Schritte zur Installation von Docker.
-
(Optional) Wenn Ihre Domain im
VPC-only-Modus mit eingeschränktem Internetzugang erstellt wurde, erstellen Sie ein öffentliches NAT-Gateway mit Zugriff auf die Docker-Website. Detaillierte Anweisungen finden Sie unter NAT-Gateways. -
Navigieren Sie zum Terminal der Studio-Anwendung, in der Sie Docker installieren möchten.
-
Führen Sie den folgenden Befehl vom Terminal aus, um das Betriebssystem der Anwendung zurückzugeben:
cat /etc/os-release -
DockerFolgen Sie bei der Installation den Anweisungen für das Betriebssystem der Anwendung im Amazon SageMaker AI Local Mode Examples Repository
. Folgen Sie bei der Installation beispielsweise Docker dem Ubuntu Skript unter https://github.com/aws-samples/amazon-sagemaker-local-mode/blob/main/sagemaker_studio_docker_cli_install/sagemaker- ubuntu-focal-docker-cli -install.sh
und beachten Sie dabei die folgenden Überlegungen: -
Wenn verkettete Befehle fehlschlagen, führen Sie die Befehle nacheinander aus.
-
Studio unterstützt nur Docker-Version
20.10.X.und Docker Engine-API-Version1.41. -
Die folgenden Pakete sind für die Verwendung der Docker-CLI in Studio nicht erforderlich und ihre Installation kann übersprungen werden:
-
containerd.io -
docker-ce -
docker-buildx-plugin
-
Anmerkung
Sie müssen den Docker-Service in Ihren Anwendungen nicht starten. Die Instance, die die Studio-Anwendung hostet, führt den Docker-Service standardmäßig aus. Alle Docker-API-Aufrufe werden automatisch über den Docker-Service weitergeleitet.
-
-
Verwenden Sie den exponierten Docker-Socket für Docker-Interaktionen innerhalb von Studio-Anwendungen. Standardmäßig ist der folgende Socket verfügbar:
unix:///docker/proxy.sockDie folgende Umgebungsvariable der Studio-Anwendung
USERverwendet standardmäßig diesen exponierten Socket:DOCKER_HOST
Kein Internetzugang
Wenn die Domain im VPC-only-Modus ohne Internetzugang erstellt wurde, befolgen Sie die Schritte zur Installation von Docker.
-
Navigieren Sie zum Terminal der Studio-Anwendung, in der Sie Docker installieren möchten.
-
Führen Sie den folgenden Befehl vom Terminal aus, um das Betriebssystem der Anwendung zurückzugeben:
cat /etc/os-release -
Laden Sie die erforderlichen Docker–
.deb-Dateien auf Ihren lokalen Rechner herunter. Anweisungen zum Herunterladen der erforderlichen Dateien für das Betriebssystem der Studio-Anwendung finden Sie unter Installieren von Docker Engine. Installieren Sie beispielsweise Docker aus einem Paket auf Ubuntu und folgen Sie dabei den Schritten 1–4 unter Aus einem Paket installieren
. Beachten Sie dabei die folgenden Überlegungen: -
Installieren Sie Docker aus einem Paket. Die Verwendung anderer Methoden zur Installation von Docker schlägt fehl.
-
Installieren Sie die neuesten Pakete, die der Docker-Version
20.10.Xentsprechen. -
Die folgenden Pakete sind nicht erforderlich, um die Docker-CLI in Studio zu verwenden. Sie müssen Folgendes nicht installieren:
-
containerd.io -
docker-ce -
docker-buildx-plugin
-
Anmerkung
Sie müssen den Docker-Service in Ihren Anwendungen nicht starten. Die Instance, die die Studio-Anwendung hostet, führt den Docker-Service standardmäßig aus. Alle Docker-API-Aufrufe werden automatisch über den Docker-Service weitergeleitet.
-
-
Laden Sie die
.deb-Dateien in das Amazon-EFS-Dateisystem oder in das Amazon-EBS-Dateisystem der Anwendung hoch. -
Installieren Sie die
.deb-Paketedocker-ce-cliunddocker-compose-pluginmanuell vom Studio-Anwendungsterminal aus. Weitere Informationen und Anweisungen finden Sie in Schritt 5 unter Aus einem Paket installierenauf der Docker-Docs-Website. -
Verwenden Sie den exponierten Docker-Socket für Docker-Interaktionen innerhalb von Studio-Anwendungen. Standardmäßig ist der folgende Socket verfügbar:
unix:///docker/proxy.sockDie folgende Umgebungsvariable der Studio-Anwendung
USERverwendet standardmäßig diesen exponierten Socket:DOCKER_HOST