Procédure
Il template Docker CE installa Docker CE, Docker Compose e Buildx sul vostro VPS KVM LWS, senza pacchetti da aggiungere manualmente. Questa guida vi insegna a reinstallare il vostro server con questo template, poi a utilizzarlo quotidianamente con Docker Compose. Vedrete come avviare un sito, seguirne i log, conservare i suoi dati, aggiornarlo ed esporlo su Internet.
Collegatevi al vostro spazio cliente LWS e aprite la scheda Server. Individuate il vostro VPS, poi fate clic su Gestisci per aprirne l'interfaccia.
Nel menu laterale sinistro, fate clic su Reinstallazione. Si apre il catalogo dei sistemi e delle applicazioni.
Nella sezione delle applicazioni, sotto la categoria Docker, scegliete ad esempio Docker CE ubuntu-24-04.
In Chiavi SSH da installare (opzionale), selezionate la vostra chiave SSH. Quindi fate clic su Reinstalla il server in basso a destra.
Nella finestra di avviso, digitate il nome esatto del vostro server, quindi fate clic sul pulsante rosso Reinstallazione.
Il sistema crea il vostro ambiente con Docker CE, Docker Compose e Buildx. L'operazione richiede generalmente tra 3 e 5 minuti.
Quando il server torna su ON con la dicitura Docker CE, annotate il suo indirizzo IPv4 nel blocco IP del server. Aprite un terminale sul vostro computer e collegatevi come root, sostituendo l'IP di esempio con il vostro.
ssh root@203.0.113.10
Mostrate le versioni di Docker e Docker Compose. Avviate poi il contenitore di test hello-world: mostra un messaggio e poi si arresta.
docker --version
docker compose version
docker run --rm hello-worldHello from Docker!
This message shows that your installation appears to be working correctly.Un file compose.yaml descrive i vostri contenitori. Create una cartella di progetto con una sottocartella per le pagine del sito e una pagina iniziale. Create quindi il file compose.yaml: avvia Nginx, pubblica la porta 8080 del server verso la porta 80 del contenitore, monta la cartella locale in sola lettura e riavvia il contenitore salvo arresto manuale.
mkdir -p /root/mon-site/html
cd /root/mon-site
echo 'Bonjour depuis Docker
' > html/index.html
nano compose.yamlservices:
web:
image: nginx:stable
ports:
- "8080:80"
volumes:
- ./html:/usr/share/nginx/html:ro
restart: unless-stoppedAccedendo alla cartella del progetto, avviate i servizi in background. Docker scarica l'immagine la prima volta, poi crea il contenitore. Testate quindi la risposta del sito dal server.
cd /root/mon-site
docker compose up -d
curl http://localhost:8080Bonjour depuis Docker
Elencate i contenitori del progetto per verificarne lo stato. Seguitene poi i log in diretta per individuare un errore o vedere le richieste ricevute. Uscite dal monitoraggio con Ctrl+C: i contenitori continuano a girare.
docker compose ps
docker compose logs -fIl contenuto di un contenitore scompare quando questo viene eliminato. Per conservare i dati, metteteli in un volume. Nell'esempio, la cartella html è montata nel contenitore: le vostre pagine restano sul server. Per un database, usate invece un volume denominato, dichiarato nel file compose.yaml. I comandi qui sotto elencano i volumi e mostrano la posizione di uno di essi.
docker volume ls
docker volume inspect nom_du_volumePer passare a una versione più recente dell'immagine, scaricatela poi ricreate il contenitore. Docker sostituisce solo i servizi la cui immagine è cambiata. I vostri volumi vengono conservati.
cd /root/mon-site
docker compose pull
docker compose up -dCon restart: unless-stopped nel file compose.yaml, il contenitore si riavvia dopo un riavvio del server. Rimane arrestato se lo avete fermato voi stessi. Il servizio Docker si avvia da solo con il sistema: verificate questo con il comando qui sotto.
systemctl is-enabled dockerenabledIl primo comando arresta ed elimina i contenitori del progetto, ma conserva i vostri file e i vostri volumi. Il secondo elimina i contenitori arrestati, le reti inutilizzate e le immagini orfane (senza etichetta). Docker vi chiede conferma prima di eseguirlo.
docker compose down
docker system pruneLa riga ports del file compose.yaml pubblica una porta del server. Con 8080:80, il sito risponde sulla porta 8080 dell'IP del server, ad esempio http://203.0.113.10:8080. Se il firewall è attivo sul vostro VPS, aprite questa porta nel menu Firewall del pannello KVM. Per utilizzare un nome di dominio come example.com, fatelo puntare all'IP del server presso il vostro gestore DNS.
curl http://203.0.113.10:8080Bonjour depuis Docker
No. Il template Docker CE integra il motore Docker CE insieme alle estensioni Docker Compose e Docker Buildx. Sono utilizzabili fin dalla fine della reinstallazione.
Le chiavi SSH vengono inserite nell'account root solo durante l'installazione del sistema. Se aggiungete una chiave più tardi, aggiungetela voi stessi nel file ~/.ssh/authorized_keys.
Pubblicate la porta con la sezione ports del file compose.yaml, ad esempio 8080:80. Se il firewall è attivo, aprite anche questa porta nel menu Firewall del pannello KVM.
Per un volume denominato, Docker li colloca sul disco del server, in /var/lib/docker/volumes. Il comando docker volume inspect indica la posizione esatta. Per una cartella montata come ./html, i dati restano nella vostra cartella di progetto.
Dalla cartella del progetto, eseguite docker compose ps -a per vedere lo stato di ogni servizio, poi docker compose logs nom_du_service per leggere i messaggi di errore. Un errore di indentazione nel file compose.yaml è una causa frequente.
Agliungete restart: unless-stopped al servizio nel file compose.yaml, poi rilanciate docker compose up -d. Il servizio Docker si avvia con il sistema e rilancia quindi i vostri contenitori.
Un'immagine è un modello fisso che contiene il codice e le sue dipendenze. Il contenitore è l'istanza in esecuzione creata a partire da questa immagine.
No. La reinstallazione sovrascrive il disco locale e rimuove definitivamente i dati così come gli snapshot esistenti.
Ponila al team LWS e alla community. La risposta viene pubblicata dopo la moderazione.