Oggi una serie di comandi per l’installazione veloce di docker e docker-compose su debian. La procedura è per Debian 11, ma più o meno dovrebbe funzionare anche per le altre versioni vicino a questa.
Partiamo con docker:
apt-get update
apt-get install apt-transport-https ca-certificates curl gnupg lsb-releaseInstalliamo la chiave GPG
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg Aggiungiamo il repository ad APT:
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/nullEffettuiamo l’installazione vera e propria dell’ultima versione disponibile:
apt-get update
apt-get install docker-ce docker-ce-cli containerd.ioNota: per installare una versione specifica, al posto dell’ultimo comando, facciamo:
apt-get install docker-ce=<VERSIONE> docker-ce-cli=<VERSIONE> containerd.ioOra passiamo a docker-compose. Scarichiamo manualmente l’ultima versione (es ora la 2.14.0rif)
curl -SL https://github.com/docker/compose/releases/download/v2.14.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-composeSistemiamo i permessi del file:
chmod +x /usr/local/bin/docker-composeSe il file non dovesse essere in quell posizione, alcune verioni lo caricano in /usr/libexec/docker/cli-plugins/docker-compose e quindi facciamo:
ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/local/bin/docker-composeVerifichiamo il funzionamento con:
docker-compose --versionSe non dovesse funzionare, possiamo fare un link simbolico in /usr/bin/
ln -s /usr/local/bin/docker-compose /usr/bin/docker-composeNota: per disinstallare docker:
apt-get purge docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker
rm -rf /var/lib/containerdper disinstallare docker-compose:
rm /usr/local/bin/docker-compose
rm /usr/bin/docker-composeInfine, se vi interessa un sistema visuale per la gestione delle istanze docker, posso consigliarvi portainer che potete recuperare da github. Per l’installazione di default:
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latestNota: se la macchina in questione è dietro un proxy, potreste ricevere il seguente errore:
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers).Questo sicuramente è legato al fatto che docker non riesce ad utilizzare il proxy. Su Debian consiglio quanto segue:
mkdir /etc/systemd/system/docker.service.deditare il file /etc/systemd/system/docker.service.d/http-proxy.conf ed inserire i parametri del proxy, es:
[Service]
Environment="HTTP_PROXY=http://proxyHost:proxyPort"
Environment="HTTPS_PROXY=http://proxyHost:proxyPort"
Environment="NO_PROXY=localhost,127.0.0.1"Ricaricare l’unità di systemd:
systemctl daemon-reloadVerificare che le impostazioni siano state correttamente lette:
systemctl show --property Environment dockerriavviare il servizio docker, eseguire entrambe i comandi:
systemctl restart docker
service docker restartE poi ripetere l’installazione di portainer, passando anche qui il proxy:
docker run -d -p 8000:8000 -p 9443:9443 -e "HTTPS_PROXY=http://proxyHost:proxyPort" --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latestVoglio ricordare che è possibile passare il proxy su docker in altri due modi:
Inserire nel file /etc/default/docker le informazioni del proxy, come segue:
export http_proxy='http://proxyHost:proxyPort'
export https_proxy='http://proxyHost:proxyPort'
export no_proxy=localhost,127.0.0.1oppure creare il file ~/.docker/config.json ed inserire quanto segue:
{
"proxies": {
"defaults": {
"httpProxy":"http://proxyHost:proxyPort",
"httpsProxy":"http://proxyHost:proxyPort",
"noProxy":"localhost,127.0.0.1"
}
}
}In ogni caso, ricordatevi di riavviare il servizio con:
service docker restartPer verificare le impostazioni passate alle macchine guest, basterà eseguire questo comando:
docker container run --rm busybox envenjoy!
Ti interessa acquistare un dominio a prezzi ultraconvenienti? clicca qui
Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario 🙂
Commenta