Docker Guide · 9 min read · Nov 24, 2025

Docker: Come usarlo in modo pratico - Parte 3

Parte 3: Creazione di un Blocco Note con i container WordPress e DokuWiki

Prefazione

Nella prima parte, abbiamo parlato di come funzionano i container docker e di come si differenziano da altre tecnologie di virtualizzazione software e nella seconda parte, abbiamo preparato il nostro sistema per gestire i container docker.

In questa parte, inizieremo a utilizzare le immagini Docker e a creare container in modo pratico. In altre parole, creeremo un blocco note personale avanzato basato sul web che funziona su DokuWiki o WordPress. Puoi scegliere quello con cui ti senti più a tuo agio.

Come eseguire un container Docker

Prima di tutto dobbiamo assicurarci che il motore docker funzioni come necessario scaricando un’immagine “Hello world” e creando un container da essa.

Ricorda, quando parliamo di un’immagine è lo stato sospeso mentre quando parliamo di container è un’istanza in esecuzione di un’immagine docker. In un’analogia, di cui abbiamo parlato in una parte precedente, un’immagine docker è come il file ISO di una distribuzione Linux, mentre il container è la sessione live del file ISO come se lo stessi eseguendo da una chiavetta USB.

Per scaricare ed eseguire l’immagine “Hello world” basta digitare nel terminale

sudo docker run hello-world

Questo comando scarica l’immagine Hello World e la esegue in un container. Quando il container è in esecuzione, stampa un messaggio informativo e poi esce (significa che si è spento).

Esempio Docker Hello World.

Come possiamo controllare quante immagini abbiamo nel nostro sistema? Bene, dobbiamo semplicemente eseguire

sudo docker images

Mostra immagini Docker.

Potresti chiederti, come ha fatto il mio sistema a trovare questa immagine Hello World e da dove proviene? Bene, qui entra in gioco il docker hub.

Introduzione al Docker Hub

Il Docker Hub è una risorsa centralizzata basata su cloud per la scoperta delle immagini dei container, la creazione delle immagini e la distribuzione di tali immagini.
In particolare, Docker Hub fornisce alcune funzionalità e funzioni utili di cui discuteremo più avanti.

Attualmente, ci concentreremo su una funzionalità e questa è la ricerca e il download di un’immagine docker.

Ricerca di immagini Docker

Puoi cercare un “immagine docker pronta per essere scaricata e eseguita”, semplicemente visitando il docker hub online o utilizzando il terminale. Nota che non puoi scaricare un’immagine docker dal web hub ma puoi saperne di più su un’immagine, come è costruita e mantenuta, ecc.

Quindi, per il fine di questa parte, ci concentreremo sull’utilizzo del terminale. Cerchiamo WordPress

sudo docker search wordpress

Cerca immagini Docker.

Come puoi vedere ci sono tonnellate di immagini docker di WordPress, costruite con varie combinazioni (ad es. con o senza inclusione del database), sono valutate con stelle di popolarità e sono ufficiali (manutenute dalla società docker) o automatizzate (costruite e mantenute da singoli). È ovvio che chiunque può creare un account e caricare la propria immagine docker personalizzata e ne discuteremo in una parte successiva.

Download di un’immagine Docker

Per il fine di questo articolo, utilizzeremo l’ultima versione dell’immagine docker di bitnami, che viene fornita con MySQL preinstallato. Quindi, scarichiamola:

sudo docker pull bitnami/wordpress:latest

Una volta eseguito il comando sopra, comunicherà con il docker hub, chiederà se esiste un repository chiamato “bitnami”, poi chiederà se esiste una build di “WordPress” contrassegnata come la versione “latest”.

Scarica immagine Docker.

Attualmente, abbiamo scaricato un’immagine WordPress e nient’altro. Possiamo procedere ora scaricando un’immagine DokuWiki cercandone una e selezionando quella che ci piace, oppure utilizzando quella che segue

sudo docker pull mprasil/dokuwiki

L’architettura dell’immagine Docker

Mentre aspettiamo che la procedura di download si completi, puoi vedere che un’immagine docker è un’immagine multi-livello sopra un’immagine di base. Puoi vedere ogni singolo livello scaricato e poi “magicamente” unificato. Il diagramma sottostante mostra un’immagine di base Ubuntu composta da 4 livelli di immagine impilati.

Architettura Docker - Parte 1

Come puoi immaginare, ogni immagine Docker fa riferimento a un elenco di livelli di sola lettura che rappresentano le differenze nel file system. Quando crei un nuovo container, da un’immagine Docker come faremo più avanti, aggiungi un nuovo livello scrivibile sottile sopra lo stack sottostante. Tutte le modifiche apportate al container in esecuzione - come la scrittura di nuovi file, la modifica di file esistenti e la cancellazione di file - vengono scritte in questo livello di container scrivibile sottile. Il diagramma sottostante mostra un container basato sull’immagine Ubuntu 15.04.

Architettura Docker - Livelli.

Cancellazione di un’immagine Docker

Ora, se controlli quante immagini hai nel tuo sistema

sudo docker images

vedrai WordPress, DokuWiki e Hello World. Se per qualsiasi motivo desideri rimuovere e cancellare (rmi) un’immagine, devi semplicemente digitare

sudo docker rmi 

dove il nome dell’immagine è il nome del docker come viene visualizzato con il comando “docker images”. Ad esempio, se vogliamo eliminare Hello World possiamo semplicemente digitare:

sudo docker rmi hello-world

I container sono effimeri

Per design, i container Docker sono effimeri. Con “effimero” intendiamo che un container può essere fermato e distrutto e un nuovo container può essere costruito dalla stessa immagine Docker e messo in atto con un minimo assoluto di configurazione e impostazione.

Pertanto, dovresti tenere a mente che quando creeremo un container dall’immagine Docker di tua preferenza (WordPress o DokuWiki) qualsiasi modifica tu faccia, ad esempio aggiungere un post, un’immagine, andrà persa una volta che fermerai o eliminerai il container. In altre parole, quando un container viene eliminato, qualsiasi dato scritto nel container che non è memorizzato in un volume dati viene eliminato insieme al container.

Un volume dati è una directory o un file nel file system dell’host Docker che è montato direttamente in un container. In questo modo puoi scambiare i container, con nuovi e mantenere i dati al sicuro nella tua cartella home utenti. Nota che puoi montare qualsiasi numero di volumi dati in un container. Anche più container possono condividere uno o più volumi dati.

Il diagramma sottostante mostra un singolo host Docker (ad es. il tuo Ubuntu 15.10) che esegue due container. Come puoi vedere, c’è anche un singolo volume dati condiviso situato in /data sull’host Docker. Questo è montato direttamente in entrambi i container.

Dati del container Docker

In questo modo, quando un container viene eliminato, qualsiasi dato memorizzato nei volumi dati persiste sull’host Docker e può essere montato su un nuovo container.

Networking del container Docker

Quando installi Docker, crea un dispositivo di rete nel tuo sistema. Puoi visualizzarlo (sarà chiamato docker0) come parte dello stack di rete di un host utilizzando il comando ifconfig sul tuo sistema host.

È importante capire che i container Docker sono isolati e sono micro-servizi individuali che hanno le proprie proprietà di rete e il modo in cui li eseguiamo e ci connettiamo a loro è mappando il loro numero di porta a un numero di porta del sistema host.

In questo modo possiamo esporre il servizio web che un container esegue al sistema host.

Creazione di un blocco note personale con un container WordPress

Iniziamo a creare il nostro blocco note di test. Prima utilizzeremo l’immagine WordPress per creare un container Docker

sudo docker run --name=mynotepad -p 80:80 -p 443:443 bitnami/wordpress

Con il comando sopra, abbiamo chiesto al servizio Docker nel nostro sistema host di creare ed eseguire (docker run) un container chiamato mynotepad (–name=mynotepad), mappare la porta HTTP e HTTPS dell’host e del container ( -p 80:80 -p 443:443 ) e utilizzare l’immagine WordPress ( bitnami/wordpress )

Container Docker Wordpress

Una volta inizializzato il container, verrai accolto con alcune informazioni sul container. È tempo di avviare un browser e puntarlo a http://localhost

Se tutto è andato bene, vedrai il sito web predefinito di WordPress

Wordpress in esecuzione in Docker.

Come già saprai, per accedere alla pagina di amministrazione di WordPress, basta andare su http://localhost/login e utilizzare le credenziali predefinite utente / bitnami. Poi puoi creare un nuovo utente o un post di test in WordPress e pubblicarlo. Puoi vedere il mio post di test nell’immagine sottostante

Wordpress in Docker

Torniamo al terminale. Come puoi vedere, il tuo terminale è attualmente legato al container in esecuzione. Puoi usare Ctrl+C per uscire. Questo fermerà anche il container.

Ora controlliamo i nostri container disponibili. Puoi eseguire il seguente comando:

sudo docker ps -l

per visualizzare il container che avevamo creato e eseguito in precedenza.

Come puoi vedere dall’immagine sopra, ci sono alcune informazioni importanti come il nome del container e l’ID unico del container. In questo modo possiamo avviare nuovamente il container:

docker start mynotepad

Poi puoi controllare i processi che il container docker esegue, con il seguente comando:

sudo docker top mynotepad

Per impostazione predefinita, con il docker start mynotepad, il container docker è in esecuzione in background. Per fermarlo, puoi eseguire il seguente comando

sudo docker stop mynotepad

Puoi leggere di più su come interagire con il container nella documentazione ufficiale di docker https://docs.docker.com/engine/userguide/containers/usingdocker/

Dove sono i container

Se vuoi vedere dove si trovano i container nel file system degli host, puoi andare su /var/lib/docker

sudo cd /var/lib/docker  
sudo ls  
sudo cd containers  
sudo cd ID  
sudo ls

Come puoi vedere, i numeri ID rappresentano i container effettivi che hai creato.

Creazione di uno storage persistente

Creiamo un nuovo container WordPress, ma questa volta, lo metteremo in background e esporremo anche la cartella di WordPress al nostro sistema host in modo da poter inserire file o rimuovere eventuali file che non vogliamo.

Prima creiamo una cartella nella nostra directory home

mkdir ~/wordpress-files

poi eseguiamo e creiamo un container basato sulla stessa immagine da cui abbiamo creato il precedente:

sudo docker run -d -ti --name=mynotepad-v2 -v ~/wordpress-files:/opt/bitnami/apps -e USER_UID=`id -u` -p 80:80 bitnami/wordpress

La differenza, questa volta, è che abbiamo utilizzato il parametro -d per la modalità staccata e il parametro -ti per allegare un terminale in modalità interattiva in modo da poter interagire con esso in seguito.

Per controllare il container in esecuzione, basta eseguire il seguente comando

sudo docker ps

Fermiamo il container

sudo docker stop mynotepad-v2

Ora, se esegui il comando docker ps, non vedrai nulla lì.
Riavviamolo con il seguente comando:

sudo docker start mynotepad-v2

Se controlli la cartella che abbiamo creato in precedenza, vedrai l’installazione di WordPress

Puoi leggere di più sull’immagine che abbiamo utilizzato nel docker hub https://hub.docker.com/r/bitnami/wordpress/

Creazione di un blocco note personale con un container DokuWiki

Questa volta, creeremo un blocco note utilizzando DokuWiki. Poiché abbiamo già scaricato l’immagine, l’unica cosa che resta da fare è creare un container da essa.

Quindi eseguiamo il seguente comando per creare il nostro container chiamato mywikipad

docker run -d -p 80:80 --name mywikipad mprasil/dokuwiki

E poi vai sul tuo browser e aggiungi il seguente indirizzo per avviare la configurazione del tuo blocco note wiki:

http://localhost/install.php

Puoi saperne di più su DokuWiki dalla documentazione ufficiale e personalizzare il wiki per le tue esigenze:

https://www.dokuwiki.org/manual

Dokuwiki in Docker

Cancellazione di un container Docker

Una volta che ti senti a tuo agio con la creazione, l’avvio e l’arresto dei container docker, ti troverai nella necessità di pulire il disordine di test creato dai molteplici container.

Per eliminare un container, prima dovrai fermarlo e poi eliminarlo eseguendo il seguente comando:

docker rm 

Puoi anche aggiungere più ID nello stesso comando docker rm per eliminare più container docker contemporaneamente.

Riepilogo

In questa parte, abbiamo imparato come creare un container e usarlo in modo pratico per creare un blocco note personale basato su WordPress o DokuWiki. Abbiamo esaminato alcuni comandi di base su come avviare e fermare i container che creiamo e come eliminare le immagini e i container.

Nella prossima parte, daremo un’occhiata a come vengono create le immagini docker creando la nostra.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.