Anwendungscontainer auf Amazon ECR veröffentlichen - AWS RoboMaker

Ende des Supporthinweises: Am 10. September 2025 AWS wird der Support für AWS RoboMaker eingestellt. Nach dem 10. September 2025 können Sie nicht mehr auf die AWS RoboMaker Konsole oder die AWS RoboMaker Ressourcen zugreifen. Weitere Informationen AWS Batch zur Umstellung auf containerisierte Simulationen finden Sie in diesem Blogbeitrag.

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.

Anwendungscontainer auf Amazon ECR veröffentlichen

Container, dieAWS RoboMaker in einem Simulationsjob verwendet werden, müssen in Amazon Elastic Container Registry (ECR) gespeichert werden, einer vollständig verwalteten Container-Registry. Sobald Sie Ihre Anwendungscontainer erfolgreich erstellt haben, müssen Sie sie an Amazon ECR übertragen. In diesem Abschnitt erfahren Sie mehr darüber.

Zu Beginn können Sie sich die wiederholte Eingabe ersparen, indem Sie einige Umgebungsvariablen festlegen, die in den folgenden Befehlen wiederverwendet werden.

export robotapp=robomaker-helloworld-robot-app export simapp=robomaker-helloworld-sim-app export account=<YOUR AWS ACCOUNT NUMBER> export region=<YOUR AWS REGION> export ecruri=$account.dkr.ecr.$region.amazonaws.com

Melden Sie sich als Nächstes an und erstellen Sie zwei neue Repositorys.

aws ecr get-login-password --region $region | docker login --username AWS --password-stdin $ecruri aws ecr create-repository --repository-name $robotapp aws ecr create-repository --repository-name $simapp

Sie können Ihre Docker-Images mit der URI des Amazon ECR-Repositorys taggen.

docker tag $robotapp $ecruri/$robotapp:latest docker tag $simapp $ecruri/$simapp:latest

übertragen Sie als Nächstes die Docker-Images an Amazon ECR übertragen.

docker push $ecruri/$robotapp docker push $ecruri/$simapp

Schließlich können Sie Ihre auf Amazon ECR hochgeladenen Bilder bestätigen, indem Sie die folgenden Befehle ausführen.

aws ecr list-images --repository-name $simapp aws ecr list-images --repository-name $robotapp

Das folgende Codefragment zeigt die erwartete Ausgabe:

Administrator:~/environment/helloworld (ros1) $ aws ecr list-images --repository-name $simapp { "imageIds": [ { "imageDigest": "sha256:28cad40230402343024kf303f30fk20f2f2fa0a8148", "imageTag": "latest" } ] } Administrator:~/environment/helloworld (ros1) $ aws ecr list-images --repository-name $robotapp { "imageIds": [ { "imageDigest": "sha256:28cad40230402343024kf303f30fk20f2f2fa0a8148", "imageTag": "latest" } ] }

Ihre Roboter- und Simulations-Docker-Images werden jetzt in Amazon ECR gehostet. Sie müssen diese Bilder einer Roboter- oder Simulationsanwendung zuordnen, bevor Sie einen Simulationsauftrag einreichen können.

Anwendungs-Versionen

AWS RoboMaker unterstützt das Erstellen mehrerer Versionen Ihrer Roboter- und Simulationsanwendungen. Auf diese Weise können Sie steuern, welchen Code Ihre Roboter und Simulationen verwenden. Eine Version ist ein nummerierter Snapshot der $LATEST-Version Ihrer Anwendung. Sie können eine Version erstellen, um sie in verschiedenen Teilen Ihres Entwicklungs-Workflows zu verwenden. Beispiel: Entwicklung, Beta-Bereitstellung oder Produktion.

Wenn Sie eine AWS RoboMaker-Roboter- oder Simulationsanwendung versionieren, erstellen Sie einen Snapshot der Anwendung. Amazon ECR verwendet Bildübersichten, um die Version Ihrer Anwendung anzugeben. AWS RoboMakermerkt sich die Bildübersicht für jede Version.

Wenn Sie das Bild auf Amazon ECR hochgeladen haben und die Bildübersicht nicht geändert haben, können Sie auf diese Version Ihrer Anwendung zugreifen und sie verwenden. Sie können maximal 40 Versionen pro Anwendung erstellen.

Wenn Sie ein Bild erstellen, können Sie es auch mit Tags versehen. Sie können den Wert des Tag-Felds wielatest für die$LATEST Version angeben. Diese Werte unterscheiden sich voneinander.

Es gibt zwei Möglichkeiten, wie ein Bild daslatest Tag erhält:

  • Sie haben ein Tag mit dem Wert von angegebenlatest.

  • Sie pushen ein Bild, das keine Tags hat. In diesem Fall aktualisiert Amazon ECR das Bild mit demlatest Tag.

Wenn Sie ein Tag für ein Bild angebenAWS RoboMaker, wird das Bild immer als$LATEST Version ausgewählt. Wenn Sie beispielsweise eine Roboteranwendung mit dem Image-NamenmyImagexyz, dem Tag und dem Image-Digest erstellen123,$LATEST enthält die VersionmyImage:xyz den Digest123.

Im Folgenden sind die Szenarien aufgeführt, in denen Sie ein Tag hinzufügen sollten:

  • Sie aktualisieren die$LATEST Version, um ein neues Tag zu verwenden. Wenn Sie beispielsweise das Bild habenmyImage, können Sie Ihr Bild mit dem Tag aktualisierenabc. Die$LATEST Version des Bildes zeigt aufmyImage:abc.

  • Du aktualisierst das Bild und taggst es neu. Sie können beispielsweise Änderungen an einem Bild vornehmen, das das Tag trägtabc. Sie können das Tag verwenden,xyz nachdem Sie es aktualisiert haben. Die$LATEST Version zeigt aufmyImage:xyz.

Weitere Informationen finden Sie unter Versionierung von Anwendungen.