Creazione di un’immagine personalizzata e invio ad Amazon ECR - Amazon SageMaker AI

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Creazione di un’immagine personalizzata e invio ad Amazon ECR

Questa pagina fornisce istruzioni su come creare un Dockerfile locale, elaborare l’immagine del container e aggiungere l’immagine ad Amazon Elastic Container Registry (Amazon ECR).

Nota

Negli esempi seguenti, i tag non sono specificati, quindi il tag latest viene applicato per impostazione predefinita. Se desideri specificare un tag, dovrai aggiungere :tag alla fine dei nomi delle immagini. Per ulteriori informazioni, consulta docker image tag nella documentazione Docker.

Creazione di un Dockerfile e di un’immagine del container

Utilizza le istruzioni seguenti per creare un Dockerfile con il software e le dipendenze desiderati.

Per creare il tuo Dockerfile
  1. Imposta innanzitutto le variabili per i AWS CLI comandi che seguono.

    LOCAL_IMAGE_NAME=local-image-name

    local-image-name è il nome dell’immagine del container sul dispositivo locale, che viene definito in questa sede.

  2. Crea un documento basato su testo, denominato Dockerfile, che soddisfi le specifiche descritte in Specifiche dell’immagine personalizzata.

    Gli esempi di Dockerfile per le applicazioni supportate sono disponibili in Esempi di Dockerfile.

    Nota

    Se stai trasferendo la tua immagine in SageMaker Unified Studio, dovrai seguire le specifiche di Dockerfile nella Guida per l'utente di Amazon SageMaker Unified Studio.

    Dockerfilealcuni esempi di SageMaker Unified Studio sono disponibili nell'esempio di Dockerfile nella Amazon SageMaker Unified Studio User Guide.

  3. Nella directory che contiene Dockerfile, crea l’immagine Docker con il comando seguente. Il punto (.) specifica che Dockerfile deve trovarsi nel contesto del comando build.

    docker build -t ${LOCAL_IMAGE_NAME} .

    Una volta completata l’operazione build, puoi elencare le informazioni sull’immagine del container con il comando seguente.

    docker images
  4. (Facoltativo) Puoi testare l’immagine con il comando seguente.

    docker run -it ${LOCAL_IMAGE_NAME}

    Nell’output vedrai che il tuo server è in esecuzione su un URL, ad esempio http://127.0.0.1:8888/.... Puoi testare l’immagine copiando l’URL nel browser.

    Se non funziona, potrebbe essere necessario includere -p port:port nel comando docker run. L’opzione mappa la porta esposta sul container alla porta sul sistema host. Per ulteriori informazioni su docker run, consulta la sezione Running container nella documentazione Docker.

    Dopo aver verificato il funzionamento del server, puoi arrestarlo e chiudere tutti i kernel prima di continuare. Le istruzioni sono disponibili nell’output.

Aggiunta di un’immagine Docker ad Amazon ECR

Per aggiungere un’immagine del container ad Amazon ECR, procedi come segue.

  • Crea un repository Amazon ECR.

  • Accedi al registro predefinito.

  • Inserisci l'immagine nel repository Amazon ECR.

Nota

L'archivio Amazon ECR deve trovarsi nello Regione AWS stesso dominio a cui alleghi l'immagine.

Per creare e inviare un’immagine del container ad Amazon ECR
  1. Per prima cosa imposta le variabili per i AWS CLI comandi che seguono.

    ACCOUNT_ID=account-id REGION=aws-region ECR_REPO_NAME=ecr-repository-name
    • account-id è l’ID del tuo account. Puoi trovarlo in alto a destra in qualsiasi pagina della AWS console. Ad esempio, la console SageMaker AI.

    • aws-regionè il dominio Amazon SageMaker AI Regione AWS del tuo dominio Amazon. Puoi trovarlo in alto a destra in qualsiasi pagina della AWS console.

    • ecr-repository-name è il nome del tuo repository Amazon Elastic Container Registry, che viene definito in questa sede. Per visualizzare i tuoi repository Amazon ECR, passa alla console di Amazon ECR.

  2. Accedi ad Amazon ECR, quindi a Docker.

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

    Una volta completata l’autenticazione, riceverai un messaggio di conferma dell’accesso.

    Importante

    Se ricevi un errore, potresti dover installare la AWS CLI o aggiornarla alla versione più recente. Per ulteriori informazioni, consulta Installazione dell’ AWS Command Line Interface nella Guida per l’utente dell’AWS Command Line Interface .

  3. Tagga l’immagine in un formato compatibile con Amazon ECR per inviarla al tuo repository.

    docker tag \ ${LOCAL_IMAGE_NAME} \ ${ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com/${ECR_REPO_NAME}
  4. Crea un repository in Amazon ECR tramite la AWS CLI. Per creare il repository utilizzando la console di Amazon ECR, consulta Creating an Amazon ECR private repository to store images.

    aws ecr create-repository \ --region ${REGION} \ --repository-name ${ECR_REPO_NAME}
  5. Invia l’immagine al tuo repository Amazon ECR. Puoi anche taggare l’immagine Docker.

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

Una volta aggiunta correttamente l’immagine al repository Amazon ECR, puoi visualizzarla nella console di Amazon ECR.