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?
-
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.
-
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.
-
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:
-
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.
-
Costruisci l’immagine dal Dockerfile:
- Il comando
docker build -t nome_immagine .prende il Dockerfile nella directory corrente e crea un’immagine Docker chiamatanome_immagine.
- Il comando
-
Avvia il Container dall’immagine:
- Una volta creata l’immagine, usa
docker runper creare un container e avviarlo.
- Una volta creata l’immagine, usa
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:
- Scrivi un Dockerfile con le istruzioni per creare il tuo ambiente.
- Usa
docker buildper creare un’immagine. - Usa
docker runper avviare un container basato su quell’immagine.