Guida a Docker

Cos’è?

Docker è una piattaforma open-source che automatizza la distribuzione di applicazioni all’interno di container software. I container permettono di impacchettare un’applicazione con tutte le sue dipendenze in un’unità standardizzata e portabile, assicurando che l’applicazione funzioni in modo coerente su qualsiasi sistema. Questa tecnologia è diventata molto popolare grazie alla sua capacità di semplificare lo sviluppo, la distribuzione e l’esecuzione di applicazioni.

Come Funziona?

Docker utilizza la virtualizzazione a livello di sistema operativo per eseguire più container indipendenti sullo stesso host. Questo metodo è più leggero rispetto alla virtualizzazione tradizionale, che richiede l’esecuzione di un intero sistema operativo per ogni macchina virtuale (VM).

Componenti Principali di Docker

  1. Engine: Il cuore di Docker, che consiste di un demone (Daemon) per la gestione dei container, un’interfaccia a riga di comando (CLI) e un’API REST.
  2. Immagini: File di sola lettura che includono tutto il necessario per eseguire una parte di un’applicazione. Le immagini sono create con Dockerfile e possono essere condivise attraverso Docker Hub o registri privati.
  3. Container Docker: Istanza di un’immagine, con tutto il codice, le librerie e le dipendenze necessarie per eseguire un’applicazione.
  4. Docker Hub: Un servizio di registry dove gli utenti possono creare, condividere e gestire immagini Docker.

Installazione

Per installare Docker, segui questi passaggi generici (può variare a seconda del sistema operativo):

    1. Windows/Mac:
      • Scarica il Docker Desktop.
      • Segui la procedura guidata di installazione.
      • Dopo l’installazione, avvia Docker Desktop.
  1. Linux (esempio per Ubuntu):
    • Aggiorna l’elenco dei pacchetti: sudo apt-get update
    • Installa i pacchetti richiesti: sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
    • Aggiungi la chiave GPG: curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add –
    • Aggiungi il repository: sudo add-apt-repository “deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable”
    • Installazione: sudo apt-get update && sudo apt-get install docker-ce
    • Verifica l’installazione: sudo systemctl status docker

Utilizzo

Ecco alcuni comandi di base per iniziare:

Eseguire un Container:

docker run -it ubuntu bash

Questo comando scarica l’immagine ubuntu dal l’Hub (se non già presente) e avvia un container interattivo con una shell Bash.

Elencare i Container:

docker ps -a

Questo comando mostra tutti i container (in esecuzione e non).

Creare un Dockerfile:

Un Dockerfile è un file di testo che contiene una serie di istruzioni per costruire un’immagine. Esempio:

# Usa un'immagine base di Python
FROM python:3.8-slim

# Imposta la directory di lavoro
WORKDIR /app

# Copia i file locali nel container
COPY . /app

# Installa le dipendenze
RUN pip install -r requirements.txt

# Definisce il comando di avvio del container
CMD ["python", "app.py"]

Costruire un’Immagine:

docker build -t nome_immagine .

Interrompere un Container:

docker stop ID_container

Rimuovere un Container:

docker ID_container

Vantaggi

  • Portabilità: I container possono essere eseguiti su qualsiasi sistema.
  • Isolamento: Ogni container opera in un ambiente isolato, evitando conflitti tra le dipendenze.
  • Efficienza: I container sono leggeri e avviano rapidamente, in quanto condividono il kernel del sistema operativo host.
  • Consistenza: Assicura che l’applicazione funzioni nello stesso modo in ogni ambiente, eliminando il classico problema del “funziona sul mio computer”.

Docker è uno strumento potente che semplifica la gestione del ciclo di vita delle applicazioni, rendendo lo sviluppo, la distribuzione e il deploy più efficienti e affidabili.

Se hai bisogno di aiuto o informazioni:

Prodotti e Servizi