Podman · 7 min read · Feb 11, 2026
Iniziare con Podman: Gestire Immagini, Contenitori e Volumi

Podman è un runtime di contenitori che fornisce funzionalità simili a Docker. Fa parte della libreria libpod e può essere utilizzato per gestire pod, contenitori, immagini di contenitori e volumi di contenitori. Podman è molto diverso da Docker, che utilizza l’architettura client-server e richiede un demone Docker per funzionare, mentre Podman non richiede alcun demone per funzionare e può essere eseguito senza problemi anche senza privilegi di root.
In questo tutorial, ti mostreremo l’uso di base di Podman per gestire contenitori, immagini e volumi, e per creare immagini di contenitori. Per completare questa guida, devi avere Podman installato. Ecco delle guide per diversi sistemi operativi:
- Come installare Podman su Ubuntu 22.04
- Iniziare con Podman (Alternativa a Docker) su Rocky Linux
- Come installare e utilizzare Podman (Alternativa a Docker) su Ubuntu 20.04
- Come installare Podman come alternativa a Docker su Debian 11
Prerequisiti
- Server Ubuntu con Podman installato
- Una conoscenza di base di Docker renderà tutto più facile
1. Comando di base di Podman
Dopo aver installato Podman sul sistema Ubuntu, dobbiamo sapere come controllare Podman stesso. Dobbiamo controllare la versione già installata sul sistema, l’ambiente di sistema di Podman e l’uso dell’aiuto di base.
Per ottenere la versione installata di Podman sulla macchina, usa il seguente comando.
podman versionQualsiasi versione di Podman > 1.0.1 andrà bene per questa guida.
Ora controlla la configurazione dell’ambiente di Podman.
podman infoE ti verrà mostrato l’ambiente di sistema dell’installazione di Podman. Inclusi i pacchetti Host, Registries e Storage.

Successivamente, esegui il seguente comando per mostrare tutte le opzioni di comando disponibili di Podman.
podman --helpPer visualizzare l’aiuto per un comando specifico, puoi usare come di seguito.
podman pod help
2. Gestire le immagini dei contenitori utilizzando Podman
Ora ci spostiamo nella gestione delle immagini dei contenitori con Podman. Ci sono alcuni comandi di base che devi conoscere relativi alla gestione delle immagini dei contenitori, inclusa la ricerca di immagini, il download di immagini, la visualizzazione delle immagini disponibili sul sistema locale e la rimozione delle immagini.
Esegui il comando qui sotto per cercare un’immagine.
podman search nginxIl comando cercherà immagini che contengono la parola ‘nginx’ in tutti i repository disponibili già definiti nel file di configurazione ‘/etc/containers/repositories.conf’.

Ora scarica alcune immagini utilizzando i comandi ‘podman pull’ qui sotto.
podman pull docker.io/library/nginx
podman pull docker.io/library/alpineUna volta completato, controlla tutte le immagini disponibili sulla macchina server.
podman imagesOra avrai le immagini nginx e alpine sul sistema.

Per rimuovere l’immagine alpine, puoi usare l’opzione ‘rmi’ come di seguito.
podman rmi alpine
Di conseguenza, avrai solo l’immagine del contenitore nginx sul sistema.
3. Gestire i contenitori
A questo punto, abbiamo appreso la gestione delle immagini dei contenitori. E il passo successivo, impareremo come creare e gestire contenitori con Podman.
Per creare un nuovo contenitore, possiamo usare il comando ‘podman run’ come di seguito.
podman run -d -p 8000:80 --name hakase-nginx docker.io/library/nginxIl comando creerà un nuovo contenitore chiamato ‘hakase-nginx’ basato sull’immagine nginx e esporrà la porta 8000 sulla macchina host.
Dettagli delle opzioni del comando:
-d - mantiene il contenitore in esecuzione in background e stampa solo l’ID del contenitore come risultato.
-p 8000:80 - mappatura delle porte per il contenitore e il sistema host. Porta 8000 sulla macchina host e porta 80 sul contenitore.
–name hakase-nginx - specifica il nome del contenitore come ‘hakase-nginx’.
Ora visualizza tutti i contenitori in esecuzione sul sistema.
podman psE ti verrà mostrato che il contenitore chiamato ‘hakase-nginx’ è attivo e funzionante.
Se vuoi controllare tutti i contenitori disponibili, puoi usare l’opzione ‘-a’.
podman ps -aOra otterrai tutti i contenitori disponibili con stati diversi.
Dopo aver ottenuto tutti i contenitori in esecuzione sulla macchina host, ti mostreremo come controllare tutti i processi all’interno del contenitore, collegarti al contenitore in esecuzione e fermare e rimuovere il contenitore.
Per controllare il processo all’interno del contenitore in esecuzione, usa il seguente comando.
podman top hakase-nginxOra per collegarti e accedere al contenitore in esecuzione, puoi usare il comando ‘exec’ come di seguito.
podman exec -it hakase-nginx /bin/bashAll’interno del contenitore ‘hakase-nginx’, controlla la versione di nginx.
nginx -VOtterrai il risultato come di seguito.

Ora digita ‘exit’ per disconnetterti dal contenitore.
Successivamente, ferma il contenitore ‘hakase-nginx’.
podman stop hakase-nginxQuindi rimuovi il contenitore.
podman rm hakase-nginx
Se vuoi forzare l’arresto e la rimozione del contenitore in esecuzione, puoi usare l’opzione ‘-f’ per forzare.
podman rm hakase-nginx -f4. Gestire i volumi
Dalla versione 0.12, Podman ha il supporto per la creazione e la gestione di volumi solo locali. Quindi, se stai utilizzando una versione precedente, non otterrai questo comando ‘podman volume’.
Ora crea un nuovo volume locale utilizzando il seguente comando.
podman volume create hakase-volumeDopo di che, visualizza tutti i volumi disponibili sul sistema.
podman volume lsE otterrai ‘hakase-volume’ nell’elenco.
Per controllare i dettagli sul volume ‘hakase-volume’, possiamo usare l’opzione ‘inspect’ come di seguito.
podman volume inspect hakase-volumeE vedrai che il ‘mountPoint’ del volume è la directory locale ‘/var/lib/containers/storage/hakase-volume/_data’.

Vai in quella directory e crea un nuovo file index.html.
cd /var/lib/containers/storage/hakase-volume/_data
echo "Questo è un indice personalizzato e un volume - Ciao Podman
" > index.htmlOra crea un nuovo contenitore e monta il ‘hakase-volume’ nel contenitore.
podman run -d -p 8000:80 -v hakase-volume:/usr/share/nginx/html --name hakase-nginx docker.io/library/nginxUna volta creato il contenitore, controlla i volumi disponibili nel contenitore utilizzando il seguente comando.
podman inspect -f '{{ json .Mounts }}' hakase-nginx | jqIn fondo al risultato, otterrai ‘hakase-volume’ nel contenitore.

Successivamente, controlla l’indirizzo IP del contenitore.
podman inspect -f '{{ .NetworkSettings.IPAddress }}' hakase-nginxAccedi al contenitore sulla porta HTTP utilizzando httpie.
http http://10.88.0.4/E otterrai il file index.html personalizzato che è stato creato nel ‘hakase-volume’.

Ora, se vuoi rimuovere il volume, puoi usare l’opzione ‘rm’.
podman volume rm hakase-volumeE il ‘hakase-volume’ verrà rimosso.
5. Creare immagini personalizzate con Commit
Ora stiamo per creare immagini di contenitori personalizzate utilizzando Podman. Fondamentalmente, Podman ti consente di creare immagini personalizzate basate sul contenitore modificato o di creare nuove immagini personalizzate utilizzando il ‘Dockerfile’.
In questa sezione, stiamo per creare nuove immagini personalizzate basate sul contenitore modificato tramite il comando ‘podman commit’.
Scarica/estrai l’immagine master ‘ubuntu’.
podman pull docker.io/library/ubuntuOra esegui il contenitore basato sull’immagine ubuntu. E all’interno del contenitore, esegui il comando ‘bash’ che aggiornerà i repository e installerà il pacchetto nginx.
podman run --name container-temp ubuntu bash -c "apt update && apt install -y nginx"Aspetta il completamento dell’installazione di nginx all’interno del contenitore.

Una volta completato, crea una nuova immagine personalizzata basata su ‘container-temp’ utilizzando il seguente comando.
podman commit container-temp my-nginxSuccessivamente, controlla le immagini disponibili sul sistema.
podman imagesE otterrai una nuova immagine chiamata ‘my-nginx’ nell’elenco.

Se vuoi eseguire il contenitore basato sull’immagine ‘my-nginx’, esegui il seguente comando.
podman run -dt -p 8001:80 --name nginx01 my-nginx /usr/sbin/nginx -g 'daemon off;'Ora controlla il contenitore in esecuzione e controlla il suo indirizzo IP.
podman ps
podman inspect --format '{{ .NetworkSettings.IPAddress }}' nginx01E ti verrà mostrato che il contenitore ‘nginx01’ è attivo e funzionante. Dopo di che, accedi alla porta HTTP sul contenitore ‘nginx01’.
http -p h 10.88.0.19Di conseguenza, otterrai la risposta dell’intestazione HTTP come di seguito.

6. Creare immagini personalizzate con Dockerfile
Ora stiamo per creare una nuova immagine di contenitore personalizzata utilizzando il Dockerfile.
Crea una nuova directory di progetto e crea un nuovo ‘Dockerfile’ all’interno.
mkdir project; cd project/
vim DockerfileIncolla la seguente configurazione.
FROM ubuntu
# Installa Nginx
RUN \
apt-get update && \
apt-get install -y nginx && \
rm -rf /var/lib/apt/lists/* && \
echo "\ndaemon off;" >> /etc/nginx/nginx.conf && \
chown -R www-data:www-data /var/lib/nginx
# Definisci le directory montabili.
VOLUME ["/etc/nginx/sites-enabled", "/etc/nginx/certs", "/etc/nginx/conf.d", "/var/log/nginx", "/var/www/html"]
# Definisci la directory di lavoro.
WORKDIR /etc/nginx
# Definisci il comando predefinito.
CMD ["nginx"]
# Esporre porte.
EXPOSE 80
EXPOSE 443Salva e chiudi.
Ora esegui il podman qui sotto per costruire una nuova immagine personalizzata utilizzando il Dockerfile.
podman build -t hakase-image .
Una volta completato, controlla la nuova immagine sulla macchina.
podman imagesE otterrai ‘hakase-image’.

Successivamente, crea un nuovo contenitore basato sull’immagine ‘hakase-image’ eseguendo il seguente comando.
podman run -d -p 8002:80 --name nginx02 hakase-imageDopo di che, controlla il contenitore ‘nginx02’ e il suo indirizzo IP.
podman ps
podman inspect --format '{{ .NetworkSettings.IPAddress }}' nginx02Assicurati che il contenitore ‘nginx02’ sia attivo e funzionante.
Ora controlla il contenitore utilizzando lo strumento httpie.
http 10.88.0.21E ti verrà mostrata la pagina predefinita di Nginx e la sua intestazione HTTP.

Infine, ora puoi gestire contenitori, immagini e volumi utilizzando Podman. E puoi creare nuove immagini personalizzate per la tua applicazione utilizzando il Dockerfile.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.