Crea e testa immagini Docker per i servizi container Lightsail - Amazon Lightsail

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à.

Crea e testa immagini Docker per i servizi container Lightsail

Docker è una tecnologia che permette di creare, eseguire, testare e implementare applicazioni distribuite basate su container. I servizi container Amazon Lightsail utilizzano immagini di container Docker nelle distribuzioni per avviare i container.

In questa guida viene illustrato come creare un'immagine di container nel computer locale utilizzando un Dockerfile. Dopo aver creato l'immagine, puoi inviarla al servizio container Lightsail per implementarla.

Per completare le procedure in questa guida, devi disporre di una conoscenza base di Docker e del suo funzionamento. Per ulteriori informazioni su Docker, consulta Cos'è Docker? e la panoramica su Docker.

Indice

Fase 1: completamento dei prerequisiti

Prima di iniziare, devi installare il software necessario per creare container e quindi inviarlo al servizio container Lightsail. Ad esempio, devi installare e utilizzare Docker per creare immagini di container personalizzate che puoi quindi utilizzare con il servizio container Lightsail. Per ulteriori informazioni, consulta Installing software to manage container images for your Amazon Lightsail container services.

Fase 2: creazione di un Dockerfile e di un'immagine di container

Completa la procedura seguente per creare un Dockerfile e un'immagine di container Docker mystaticwebsite a partire da esso. L'immagine di container sarà per un semplice sito Web statico ospitato su un server Web Apache su Ubuntu.

  1. Creazione di una cartella mystaticwebsite sul tuo computer locale in cui archivierai il tuo Dockerfile.

  2. Crea un Dockerfile nella cartella che hai appena creato.

    Il Dockerfile non utilizza un'estensione di file, ad esempio .TXT. Il nome del file è Dockerfile.

  3. Copia uno dei seguenti blocchi di codice, a seconda di come vuoi configurare l'immagine di container, e incollalo nel Dockerfile:

    • Se vuoi creare una semplice immagine di container del sito Web statico con un messaggio Hello World, copia il seguente blocco di codice e incollalo nel Dockerfile. Questo esempio di codice utilizza l'immagine Ubuntu 18.04. L'istruzione RUN aggiorna le cache dei pacchetti, installa e configura Apache e stampa un messaggio Hello World nella radice del documento del server Web. L'istruzione EXPOSE espone la porta 80 nel container, mentre l'istruzione CMD avvia il server Web.

      FROM ubuntu:18.04 # Install dependencies RUN apt-get update && \ apt-get -y install apache2 # Write hello world message RUN echo 'Hello World!' > /var/www/html/index.html # Open port 80 EXPOSE 80 # Start Apache service CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
    • Se vuoi utilizzare il tuo set di file HTML per l'immagine di container del sito Web statico, crea una cartella html nella stessa cartella in cui è archiviato il Dockerfile. Quindi posiziona i tuoi file HTML in quella cartella.

      Dopo aver posizionato i tuoi file HTML nella cartella html, copia il seguente blocco di codice e incollalo nel Dockerfile. Questo esempio di codice utilizza l'immagine Ubuntu 18.04. L'istruzione RUN aggiorna le cache dei pacchetti, installa e configura Apache. L'istruzione COPY copia il contenuto della cartella html nella radice del documento del server Web. L'istruzione EXPOSE espone la porta 80 nel container, mentre l'istruzione CMD avvia il server Web.

      FROM ubuntu:18.04 # Install dependencies RUN apt-get update && \ apt-get -y install apache2 # Copy html directory files COPY html /var/www/html/ # Open port 80 EXPOSE 80 CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
  4. Apri un prompt dei comandi o una finestra del terminale e modifica la directory nella cartella in cui è archiviato il Dockerfile.

  5. Inserisci il comando seguente per creare l'immagine di container utilizzando il Dockerfile nella cartella. Questo comando crea una nuova immagine di container Docker denominata mystaticwebsite.

    docker build -t mystaticwebsite .

    Dovresti visualizzare un messaggio che conferma che l'immagine è stata creata correttamente.

  6. Inserisci il comando seguente per visualizzare le immagini di container sul computer locale.

    docker images --filter reference=mystaticwebsite

    Dovresti vedere un risultato analogo all'esempio seguente, che mostra la nuova immagine di container creata.

    Risultato del comando docker images

    L'immagine di container appena creata è pronta per essere testata utilizzandola per eseguire un nuovo container sul computer locale. Continua fino alla successiva Fase 3: esecuzione della nuova immagine di container in questa guida.

Fase 3: esecuzione della nuova immagine di container

Completa i seguenti passaggi per eseguire la nuova immagine di container creata.

  1. In un prompt dei comandi o in una finestra del terminale, inserisci il comando seguente per eseguire l'immagine di container creata nella precedente Fase 2: creazione di un Dockerfile e di un'immagine di container in questa guida. L'opzione -p 8080:80 mappa la porta 80 esposta sul container alla porta 8080 sul computer locale. L'opzione -d specifica che il container deve essere eseguito in modalità scollegata.

    docker container run -d -p 8080:80 --name mystaticwebsite mystaticwebsite:latest
  2. Inserisci il comando seguente per visualizzare i container in esecuzione.

    docker container ls -a

    Dovresti vedere un risultato analogo all'esempio seguente, che mostra il nuovo container in esecuzione.

    Risultato del comando docker container
  3. Per confermare che il container è operativo, apri una nuova finestra del browser e passa a http://localhost:8080. Dovresti visualizzare un messaggio simile all'esempio seguente. Questo conferma che il container è operativo sul computer locale.

    Sito Web statico in esecuzione in un container Docker

    L'immagine del container appena creato è pronta per essere inviata al tuo account Lightsail, in modo da poterla implementare nel tuo servizio container Lightsail. Per ulteriori informazioni, consulta Pushing and managing container images on your Amazon Lightsail container services.

(Opzionale) Fase 4: pulizia dei container in esecuzione sul computer locale

Ora che hai creato un'immagine di container che puoi inviare al servizio container Lightsail, è il momento di pulire i container in esecuzione sul computer locale seguendo le procedure descritte in questa guida.

Completa i passaggi seguenti per pulire i container in esecuzione sul computer locale:

  1. Inserisci il comando seguente per visualizzare i container in esecuzione sul computer locale.

    docker container ls -a

    Dovresti vedere un risultato simile al seguente, in cui sono elencati i nomi dei container in esecuzione sul computer locale.

    Risultato del comando docker container
  2. Esegui il comando seguente per rimuovere il container in esecuzione creato in precedenza in questa guida. Questo forza l'arresto del container e lo elimina in modo permanente.

    docker container rm <ContainerName> --force

    Nel comando, sostituisci < ContainerName > con il nome del contenitore che desideri interrompere ed elimina.

    Esempio:

    docker container rm mystaticwebsite --force

    Il container creato come risultato di questa guida dovrebbe essere ora eliminato.

Fasi successive dopo la creazione di immagini di container

Dopo aver creato le immagini di container, inviale al servizio container Lightsail quando sei pronto per implementarle. Per ulteriori informazioni, consulta Gestire le immagini del servizio container Lightsail.