Disinstallare Docker Desktop senza perdere i volumi
Docker Desktop non è un'unica app. È un'interfaccia grafica, una macchina virtuale in background, un insieme di
strumenti a riga di comando collegati in /usr/local/bin, e un'immagine disco che cresce senza farsi notare
fino a decine di gigabyte. Trascinarlo nel Cestino rimuove solo la prima di queste parti e lascia
il resto.
È il programma di disinstallazione ufficiale a eliminare i dati locali, non soltanto la pulizia successiva. Prima di avviarlo, conviene distinguere ciò che puoi ricreare da ciò che devi salvare.
Prima di eliminare i file di supporto, confronta la procedura ufficiale attuale di Docker Desktop. Se il produttore offre un programma dedicato o un comando nell’app, usalo per primo e tratta dopo solo i residui di cui puoi confermare il proprietario.
La disinstallazione distrugge container, immagini e volumi
Docker lo dichiara chiaramente: disinstallare Docker Desktop distrugge container, immagini, volumi e altri dati Docker locali della macchina. Non si può annullare e non passa dal Cestino. Salva i dati importanti prima di confermare.
Le immagini si possono riscaricare o ricostruire se il registry o i sorgenti completi sono ancora disponibili. Immagini mai pubblicate e modifiche dentro i container possono invece essere copie uniche. Controlla soprattutto i volumi con nome: possono contenere i dati di un database locale Postgres o MySQL e vengono eliminati insieme al resto.
Prima di qualsiasi altra cosa, elenca ciò che esiste:
docker volume ls
Salva i volumi importanti prima di disinstallare. Per i database, preferisci lo strumento di backup del database stesso. Prima di una copia dei file come questa, arresta tutte le scritture per ottenere un backup coerente:
docker run --rm -v <volume>:/from -v "$PWD":/to alpine \
tar czf /to/<volume>.tgz -C /from .
Lo stesso vale per tutto ciò che hai creato e non hai mai caricato. docker image ls mostra ciò
che è locale; se non è in un registry, esiste solo su questo Mac.
Se ti serve spazio, potresti non dover disinstallare affatto
Docker tiene tutto in un'unica grande immagine disco virtuale, e di solito quel file è
il pezzo più grosso di Docker. Un pruning dentro Docker spesso recupera ciò che
cercavi lasciando lo strumento installato, ma elimina
definitivamente i dati selezionati. Inizia con docker system df per vedere la ripartizione, poi leggi
Pulire Docker su Mac senza perdere dati, che
copre il pruning e il motivo per cui il file disco non si riduce da solo.
Se sei qui per rimuovere Docker definitivamente, continua.
Usa il programma di disinstallazione di Docker
Docker include un programma di disinstallazione e fa più che eliminare l'app. Arresta i servizi in background e rimuove i symlink a riga di comando che un trascinamento dal Finder lascia sul Mac.
Dall'app: apri Docker Desktop, seleziona l'icona Troubleshoot in alto a destra, scegli Uninstall e conferma. Da Terminal:
/Applications/Docker.app/Contents/MacOS/uninstall
Poi sposta Docker da Applicazioni al Cestino.
Docker documenta un errore specifico operation not permitted su
.com.apple.containermanagerd.metadata.plist nel container dell’app: il file può restare
dopo una disinstallazione altrimenti riuscita. Non vale per ogni errore di autorizzazione.
Verifica il percorso e l’esito del programma; per rimuovere residui protetti, Terminale
può richiedere Accesso completo al disco.
Cosa resta, e di chi è
Dopo che il programma di disinstallazione ha terminato, alcune cartelle restano. Docker ne nomina due:
~/Library/Group Containers/group.com.docker
~/.docker
Non sono la stessa cosa, e la differenza conta.
~/.docker è la tua configurazione. Contiene contesti, impostazioni del daemon e
credenziali dei registry da docker login. Se reinstallerai Docker in seguito, o passerai a
Colima, Rancher Desktop o OrbStack, questa è la cartella che potresti voler tenere. Eliminarla
significa effettuare di nuovo il login a ogni registry.
~/Library/Containers/com.docker.docker è la cartella container dell'app. Contiene la
macchina virtuale e la sua immagine disco, Docker.raw: è qui che stanno le decine di
gigabyte, ed è anche la cartella protetta dell'errore operation not permitted descritto
sopra. ~/Library/Group Containers/group.com.docker contiene le impostazioni di Docker
Desktop, non l'immagine disco. Una volta messo in conto che container e volumi sono
spariti, sono queste due cartelle la parte che vale la pena rimuovere.
Oltre a queste due, Docker lascia le solite tracce di macOS: cache, log, preferenze e
stato salvato delle applicazioni sotto la tua Libreria. Queste sono usa e getta. Non si tratta di
eliminare ogni file con docker nel nome, ma di sapere quale di essi è una cache e
quale è una credenziale.
Conferma che sia davvero sparito
Due controlli. Primo, che non sia ancora in esecuzione nulla:
pgrep -fl -i docker
Secondo, che gli strumenti a riga di comando siano scollegati:
which docker docker-compose
Entrambi non dovrebbero restituire nulla. Se docker punta ancora a un eseguibile, probabilmente hai una copia
Homebrew della CLI installata separatamente, che è un pacchetto diverso e sopravvive al programma di
disinstallazione di Docker Desktop di proposito. brew list | grep docker te lo dirà.
Il modo più rapido per vedere tutto in una volta
Il percorso manuale funziona, ma ti chiede di sapere già quali percorsi esistono e quali di essi sono i tuoi dati. È la parte che le guide di solito saltano, ed è la parte che ti costa qualcosa quando va male.
Mole elenca i residui rilevati prima di rimuoverli, raggruppati così puoi vedere cos'è davvero una cartella, con la sua dimensione accanto. Esamini l'insieme, deselezioni ciò che vuoi tenere, e ciò che rimuovi va nel Cestino invece di scomparire. Per Docker in particolare, l'immagine disco di solito rappresenta quasi tutto lo spazio recuperato, e vedere quel numero prima di confermare è la differenza tra una pulizia e una sorpresa.
Cosa torna dopo una reinstallazione
Immagini e container non tornano automaticamente. Servono immagini accessibili oppure sorgenti e configurazioni completi. Dati dei volumi, immagini mai pubblicate e modifiche all'interno dei container richiedono un backup separato.
Conservare ~/.docker permette di riutilizzare configurazioni e contesti. Gli accessi ai registry possono dipendere anche dal gestore delle credenziali. Se elimini la cartella, potresti dover riconfigurare tutto: verifica prima il backup.
L'immagine del disco virtuale viene ricreata vuota. Torna a crescere man mano che scarichi di nuovo le immagini, quindi le decine di gigabyte liberate dalla disinstallazione sono per lo più temporanee se reinstalli e torni a usarlo come prima. Tenere basso quel numero nel lungo periodo è il compito di docker system prune, non di un ciclo di reinstallazione.