Tutorial: creazione di un contenitore Docker all'interno AWS 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à.

Tutorial: creazione di un contenitore Docker all'interno AWS CloudShell e trasferimento in un repository Amazon ECR

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

Prerequisiti

Procedura tutorial

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

  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 inAWS 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 repository Amazon ECR. Se disponi di un repository Amazon ECR esistente, puoi saltare questo passaggio.

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

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

    Esegui il comando seguente per ottenere le credenziali di accesso Amazon ECR 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 accesso Amazon ECR per Docker.
  9. Etichetta l'immagine con il repository Amazon ECR di destinazione e poi inviala a tale 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 repository Amazon ECR 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 Amazon ECR. 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 repository Amazon ECR.

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