Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Créez une image personnalisée et envoyez-la vers Amazon ECR
Cette page fournit des instructions sur la façon de créer un Dockerfile local, de créer l'image du conteneur et de l'ajouter à Amazon Elastic Container Registry (Amazon ECR).
Note
Dans les exemples suivants, les balises ne sont pas spécifiées et la balise latest
est appliquée par défaut. Si vous souhaitez spécifier une balise, vous devez l'ajouter :
à la fin des noms des images. Pour plus d'informations, consultez la section docker image tagtag
Rubriques
Créez un Dockerfile local et créez l'image du conteneur
Utilisez les instructions suivantes pour créer un Dockerfile avec le logiciel et les dépendances souhaités.
Pour créer votre Dockerfile
-
Définissez d'abord vos variables pour les AWS CLI commandes qui suivent.
LOCAL_IMAGE_NAME=
local-image-name
est le nom de l'image du conteneur sur votre appareil local, que vous définissez ici.local-image-name
-
Créez un document texte, nommé
Dockerfile
, qui répond aux spécifications de. Spécifications d'images personnaliséesDockerfile
vous trouverez des exemples d'applications prises en charge dansExemples de fichiers Dockerfile.Note
Si vous apportez votre propre image à SageMaker Unified Studio, vous devez suivre les spécifications Dockerfile du guide de l'utilisateur d'Amazon SageMaker Unified Studio.
Dockerfile
vous trouverez des exemples d' SageMaker Unified Studio dans l'exemple Dockerfile du guide de l'utilisateur d'Amazon SageMaker Unified Studio. -
Dans le répertoire contenant votre
Dockerfile
, créez l'image Docker à l'aide de la commande suivante. Le point (.
) indique que leDockerfile
doit être dans le contexte de la commande de construction.docker build -t ${LOCAL_IMAGE_NAME} .
Une fois la génération terminée, vous pouvez répertorier les informations relatives à l'image de votre conteneur à l'aide de la commande suivante.
docker images
-
(Facultatif) Vous pouvez tester votre image à l'aide de la commande suivante.
docker run -it ${LOCAL_IMAGE_NAME}
Dans le résultat, vous constaterez que votre serveur fonctionne sur une URL, comme
http://127.0.0.1:8888/...
. Vous pouvez tester l'image en copiant l'URL dans le navigateur.Si cela ne fonctionne pas, vous devrez peut-être l'inclure
-p
dans la commande docker run. Cette option fait correspondre le port exposé du conteneur à un port du système hôte. Pour plus d'informations sur docker run, consultez la section Running containersport
:port
de la documentation Docker. Une fois que vous avez vérifié que le serveur fonctionne, vous pouvez arrêter le serveur et arrêter tous les noyaux avant de continuer. Les instructions sont visibles en sortie.
Ajouter une image Docker à Amazon ECR
Pour ajouter une image de conteneur à Amazon ECR, vous devez effectuer les opérations suivantes.
-
Créez un référentiel Amazon ECR.
-
Connectez-vous à votre registre par défaut.
-
Transmettez l'image dans le référentiel Amazon ECR.
Note
Le référentiel Amazon ECR doit se trouver dans le même domaine Région AWS que le domaine auquel vous joignez l'image.
Pour créer et envoyer l'image du conteneur vers Amazon ECR
-
Définissez d'abord vos variables pour les AWS CLI commandes qui suivent.
ACCOUNT_ID=
account-id
REGION=aws-region
ECR_REPO_NAME=ecr-repository-name
-
est l'identifiant de votre compte. Vous pouvez le trouver en haut à droite de n'importe quelle page de AWS console. Par exemple, la console SageMaker AIaccount-id
. -
est celui Région AWS de votre domaine Amazon SageMaker AI. Vous pouvez le trouver en haut à droite de n'importe quelle page de AWS console.aws-region
-
est le nom de votre référentiel Amazon Elastic Container Registry, que vous définissez ici. Pour consulter vos référentiels Amazon ECR, consultez la console Amazon ECRecr-repository-name
.
-
-
Connectez-vous à Amazon ECR et connectez-vous à Docker.
aws ecr get-login-password \ --region ${REGION} | \ docker login \ --username AWS \ --password-stdin ${ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com
En cas d'authentification réussie, vous recevrez un message de connexion réussie.
Important
Si un message d'erreur s'affiche, il se peut que vous deviez installer la dernière version du AWS CLI. Pour plus d’informations, consultez Installation d’ AWS Command Line Interface dans le Guide de l’utilisateur AWS Command Line Interface .
-
Marquez l'image dans un format compatible avec Amazon ECR, pour la transférer vers votre référentiel.
docker tag \ ${LOCAL_IMAGE_NAME} \ ${ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com/${ECR_REPO_NAME}
-
Créez un référentiel Amazon ECR à l'aide de la AWS CLI. Pour créer le référentiel à l'aide de la console Amazon ECR, consultez Création d'un référentiel privé Amazon ECR pour stocker des images.
aws ecr create-repository \ --region ${REGION} \ --repository-name ${ECR_REPO_NAME}
-
Transférez l'image dans votre référentiel Amazon ECR. Vous pouvez également baliser l'image Docker.
docker push ${ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com/${ECR_REPO_NAME}
Une fois que l'image a été ajoutée avec succès à votre référentiel Amazon ECR, vous pouvez l'afficher dans la console Amazon ECR.