Creazione di un contenitore Docker all'interno CloudShell e trasferimento in un repository Amazon ECR - AWS CloudShell

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 contenitore Docker all'interno CloudShell e trasferimento in un repository Amazon ECR

Questo tutorial mostra come definire e creare un container Docker AWS CloudShell e inviarlo a un ECR repository Amazon.

Prerequisiti

Procedura tutorial

Il seguente tutorial illustra come utilizzare l' CloudShell interfaccia per creare un contenitore Docker e inviarlo a un repository AmazonECR.

  1. Crea una nuova cartella nella tua home directory.

    mkdir ~/docker-cli-tutorial
  2. Vai alla cartella che hai creato.

    cd ~/docker-cli-tutorial
  3. Crea un Dockerfile vuoto.

    touch Dockerfile
  4. Utilizzando un editor di testo, ad esempionano Dockerfile, apri il file e incolla il seguente contenuto al suo interno.

    # Dockerfile # Base this container on the latest Amazon Linux version FROM public.ecr.aws/amazonlinux/amazonlinux:latest # Install the cowsay binary RUN dnf install --assumeyes cowsay # Default entrypoint binary ENTRYPOINT [ "cowsay" ] # Default argument for the cowsay entrypoint CMD [ "Hello, World!" ]
  5. Il Dockerfile è ora pronto per essere creato. Costruisci il contenitore eseguendo. docker build Etichetta il contenitore con un easy-to-type nome da utilizzare nei comandi futuri.

    docker build --tag test-container .

    Assicurati di includere il punto finale (.).

    Immagine del comando docker build eseguito all'interno. AWS CloudShell
  6. Ora puoi testare il contenitore per verificare che funzioni correttamente in AWS CloudShell.

    docker container run test-container
    Immagine del comando run del contenitore docker all'interno AWS CloudShell
  7. Ora che hai un contenitore Docker funzionante, devi inviarlo a un ECR repository Amazon. Se disponi di un ECR repository Amazon esistente, puoi saltare questo passaggio.

    Esegui il seguente comando per creare un ECR repository Amazon per questo tutorial.

    ECR_REPO_NAME=docker-tutorial-repo aws ecr create-repository --repository-name ${ECR_REPO_NAME}
    Immagine del comando usato per creare un ECR repository Amazon all'interno AWS CloudShell
  8. Dopo aver creato il ECR repository Amazon, puoi inviare il contenitore Docker al suo interno.

    Esegui il comando seguente per ottenere le credenziali di ECR accesso Amazon per Docker.

    AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query "Account" --output text) ECR_URL=${AWS_ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com aws ecr get-login-password | docker login --username AWS --password-stdin ${ECR_URL}
    Immagine del comando usato per ottenere le credenziali di ECR accesso Amazon per Docker.
    Nota

    Se la variabile di AWS_REGION ambiente non è impostata nel tuo CloudShell o desideri interagire con le risorse di altri Regioni AWS, esegui il seguente comando:

    AWS_REGION=<your-desired-region>
  9. Etichetta l'immagine con il ECR repository Amazon di destinazione e poi inviala a quel repository.

    docker tag test-container ${ECR_URL}/${ECR_REPO_NAME} docker push ${ECR_URL}/${ECR_REPO_NAME}
    Immagine del comando usato per etichettare l'immagine con il ECR repository Amazon di destinazione.

    Se riscontri errori o riscontri problemi durante il tentativo di completare questo tutorial, consulta la sezione Risoluzione dei problemi di questa guida per ricevere assistenza.

Eliminazione

Ora hai distribuito con successo il tuo contenitore Docker nel tuo repository AmazonECR. Per rimuovere i file creati in questo tutorial dal tuo AWS CloudShell ambiente, esegui il comando seguente.

  • cd ~ rm -rf ~/docker-cli-tutorial
  • Elimina il ECR repository Amazon.

    aws ecr delete-repository --force --repository-name ${ECR_REPO_NAME}