CodeGym /Corsi /Docker SELF /Verifica dello stato dei container

Verifica dello stato dei container

Docker SELF
Livello 11 , Lezione 2
Disponibile

3.1 Fondamenti del comando docker ps

Il comando docker ps è uno dei più utili nell'arsenale di Docker. Mostra l'elenco dei container in esecuzione e fornisce informazioni su di essi. In questa lezione esamineremo in dettaglio come utilizzare docker ps per controllare lo stato dei tuoi container e quali opzioni sono disponibili per ottenere informazioni più dettagliate.

Per impostazione predefinita, il comando docker ps mostra solo l'elenco dei container attualmente in esecuzione.

Sintassi

Terminal

docker ps [OPTIONS]

Dove:

  • OPTIONS: parametri aggiuntivi per filtrare e formattare l'output.

Esempio di utilizzo base

Terminal


docker ps 

Questa chiamata base del comando docker ps mostrerà l'elenco di tutti i container in esecuzione. L'output includerà i seguenti campi:

  • CONTAINER ID: identificatore univoco del container.
  • IMAGE: l'immagine da cui è stato creato il container.
  • COMMAND: il comando in esecuzione nel container.
  • CREATED: tempo trascorso dalla creazione del container.
  • STATUS: stato corrente del container (ad esempio, Up 5 minutes).
  • PORTS: porte inoltrate.
  • NAMES: nome del container.

Elenco di tutti i container

Per mostrare tutti i container, inclusi quelli arrestati, utilizza l'opzione -a:

Terminal


docker ps -a 

Questo comando mostrerà l'elenco di tutti i container mai avviati, indicando il loro stato corrente (esecuzione, arresto, ecc.).

3.2 Filtraggio dell'output

Docker ti permette di filtrare l'output del comando docker ps per mostrare solo quei container che soddisfano criteri specifici.

1. Filtraggio per stato

Per esempio, per visualizzare solo i container arrestati:

Terminal


docker ps -f "status=exited" 

2. Filtraggio per nome

Per visualizzare i container con un nome specifico o una sua parte:

Terminal


docker ps -f "name=my_container"

3. Filtraggio per immagine

Per visualizzare i container creati da una specifica immagine:

Terminal

docker ps -f "ancestor=nginx"

3.3 Formattazione dell'output

Puoi personalizzare l'output del comando docker ps per renderlo più leggibile o includere solo i campi di cui hai bisogno. Per farlo si utilizza il parametro --format.

Esempio di formattazione

Terminal


docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"

Questo esempio restituisce una tabella con l'identificativo del container, il suo nome e lo stato.

Colonne disponibili nella tabella

  • {{.ID}}: identificativo del container.
  • {{.Image}}: immagine del container.
  • {{.Command}}: comando eseguito nel container.
  • {{.CreatedAt}}: data di creazione del container.
  • {{.RunningFor}}: tempo di esecuzione del container.
  • {{.Status}}: stato attuale del container.
  • {{.Ports}}: porte inoltrate.
  • {{.Names}}: nome del container.

Esempi di utilizzo

Esempio 1: visualizzare solo gli identificativi dei container

Questo esempio mostrerà solo gli identificativi dei container in esecuzione. Utile per l'uso negli script.

Terminal


docker ps -q

Esempio 2: visualizzare i container avviati nelle ultime 24 ore

Terminal


docker ps --filter "since=24h" 

Esempio 3: visualizzare i container con uno stato specifico e formattare l'output

Questo esempio restituisce una tabella con i nomi dei container, il loro stato e le porte inoltrate per tutti i container in esecuzione.

Terminal


docker ps -f "status=running" --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}" 

3.4 Scenari pratici

1. Monitoraggio dei container in esecuzione

Quando hai più container in esecuzione, il comando docker ps ti permette di controllare velocemente il loro stato attuale e assicurarti che tutto stia funzionando correttamente.

Terminale


docker ps 

2. Ricerca e rimozione dei container fermati

Dopo che i container terminano il loro lavoro, rimangono nel sistema finché non li rimuovi. Puoi utilizzare docker ps -a per trovare tutti i container fermati e successivamente eliminarli.

Terminale

docker ps -a -f "status=exited" 
docker rm $(docker ps -a -f "status=exited" -q)
    

3. Automazione delle attività

Usare il comando docker ps negli script permette di automatizzare varie attività di amministrazione dei container. Ad esempio, puoi creare report sullo stato dei container o riavviare automaticamente i container se sono fermati.

Terminale

if [ $(docker ps -q -f "name=my_container") ]; then
  echo "Il container è in esecuzione"
else
  docker start my_container
fi
    

Importante! Questo “codice” è scritto nel terminale di Linux. Forse, ti conviene studiarlo.

Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION