tags: docker funzionamento


Docker è uno strumento per creare e gestire container, ambienti isolati e leggeri in cui possiamo eseguire applicazioni, strumenti o software con tutte le dipendenze necessarie già incluse. Vediamo i concetti fondamentali e una guida passo-passo per creare un container.

Cosa Serve per Creare un Container Docker?

  1. Dockerfile: È il file di configurazione di base per Docker. Contiene le istruzioni su come costruire l’ambiente, come installare le dipendenze e specificare quali comandi eseguire quando si avvia il container.

  2. Immagine Docker: Il Dockerfile viene usato per creare un’immagine. Un’immagine è una “fotografia” di tutto l’ambiente (sistema operativo, software, librerie, ecc.). L’immagine può essere riutilizzata per creare container, ed è come uno “stampo” per costruire ambienti isolati.

  3. Container Docker: Una volta creata un’immagine, puoi avviare uno o più container basati su di essa. I container sono istanze attive e isolate dell’immagine che hai costruito.

Come Funziona Docker in Pratica

Quando esegui Docker, segui questi passaggi:

  1. Scrivi un Dockerfile:

    • Il Dockerfile è un file di testo con una serie di istruzioni per configurare l’ambiente.
    • Esso specifica da dove partire (esempio: un’immagine base come ubuntu), quali programmi installare e quali comandi eseguire.
  2. Costruisci l’immagine dal Dockerfile:

    • Il comando docker build -t nome_immagine . prende il Dockerfile nella directory corrente e crea un’immagine Docker chiamata nome_immagine.
  3. Avvia il Container dall’immagine:

    • Una volta creata l’immagine, usa docker run per creare un container e avviarlo.

Esempio Pratico: Creare un Dockerfile e Avviare un Container

1. Scrivi il Dockerfile

Crea un file chiamato Dockerfile e aggiungi istruzioni come queste:

Dockerfile

Copy code

# Usa una base come Ubuntu FROM ubuntu:latest # Installa Python RUN apt update && apt install -y python3 # Copia il tuo script Python nel container COPY script.py /app/script.py # Imposta la directory di lavoro WORKDIR /app # Definisci il comando che Docker eseguirà quando il container parte CMD ["python3", "script.py"]

Queste righe dicono a Docker di:

  • Usare un’immagine base di Ubuntu.
  • Installare Python.
  • Copiare uno script Python nel container.
  • Avviare lo script quando il container si avvia.

2. Costruisci l’immagine

Posiziona il Dockerfile e lo script (script.py) nella stessa directory. Poi, apri un terminale e costruisci l’immagine:

docker build -t mio_container .

Questo comando dice a Docker di creare un’immagine chiamata mio_container usando il Dockerfile nella directory corrente (.).

3. Esegui il Container

Ora, puoi creare e avviare un container usando l’immagine:

docker run mio_container

Comandi Principali

  • docker build: costruisce un’immagine da un Dockerfile.
  • docker images: mostra tutte le immagini Docker salvate.
  • docker run: esegue un container basato su un’immagine.
  • docker ps: mostra tutti i container attualmente in esecuzione.
  • docker stop: interrompe un container in esecuzione.
  • docker rm: rimuove un container.

Riassunto

Con Docker:

  1. Scrivi un Dockerfile con le istruzioni per creare il tuo ambiente.
  2. Usa docker build per creare un’immagine.
  3. Usa docker run per avviare un container basato su quell’immagine.