111 lines
2.0 KiB
Markdown
111 lines
2.0 KiB
Markdown
# How-To: Reset dei Permessi Docker
|
|
|
|
Guida per ripristinare i permessi del socket Docker e risolvere problemi di accesso.
|
|
|
|
## Reset dei Permessi del Socket
|
|
|
|
```bash
|
|
# Ferma il demone Docker
|
|
sudo systemctl stop docker
|
|
|
|
# Ripristina la proprietà del socket
|
|
sudo chown root:docker /var/run/docker.sock
|
|
|
|
# Ripristina i permessi (660 = rw-rw----)
|
|
sudo chmod 660 /var/run/docker.sock
|
|
|
|
# Riavvia Docker
|
|
sudo systemctl start docker
|
|
```
|
|
|
|
## Verifica
|
|
|
|
```bash
|
|
# Verifica i permessi del socket
|
|
ls -l /var/run/docker.sock
|
|
```
|
|
|
|
Atteso: `srw-rw---- 1 root docker ...`
|
|
|
|
## Ricrea il Gruppo Docker
|
|
|
|
Se il gruppo docker è stato eliminato:
|
|
|
|
```bash
|
|
# Crea il gruppo docker
|
|
sudo groupadd docker
|
|
|
|
# Riavvia Docker per assicurarti che il socket appartenga al gruppo
|
|
sudo systemctl restart docker
|
|
```
|
|
|
|
## Risoluzione Problemi Comuni
|
|
|
|
### Problema: "Got permission denied while trying to connect"
|
|
|
|
**Causa:** Utente non in gruppo docker o permessi socket errati
|
|
|
|
**Soluzione:**
|
|
|
|
```bash
|
|
# Verifica gruppi utente
|
|
groups $USER
|
|
|
|
# Aggiungi al gruppo se necessario
|
|
sudo usermod -aG docker $USER
|
|
|
|
# Verifica permessi socket
|
|
ls -l /var/run/docker.sock
|
|
|
|
# Correggi se necessario
|
|
sudo chmod 660 /var/run/docker.sock
|
|
sudo chown root:docker /var/run/docker.sock
|
|
```
|
|
|
|
### Problema: Socket non esiste
|
|
|
|
**Causa:** Docker non è in esecuzione
|
|
|
|
**Soluzione:**
|
|
|
|
```bash
|
|
# Avvia Docker
|
|
sudo systemctl start docker
|
|
|
|
# Verifica che il socket sia stato creato
|
|
ls -l /var/run/docker.sock
|
|
```
|
|
|
|
### Problema: Group membership non attiva
|
|
|
|
**Causa:** I gruppi vengono valutati al login
|
|
|
|
**Soluzione:**
|
|
|
|
```bash
|
|
# Attiva il gruppo per la sessione corrente
|
|
newgrp docker
|
|
|
|
# Oppure fai login di nuovo
|
|
su - $USER
|
|
```
|
|
|
|
## Reset Completo dell'Ambiente
|
|
|
|
Per reset completo dell'ambiente Docker tra i lab:
|
|
|
|
```bash
|
|
# Dalla root del repository
|
|
bash scripts/reset-env.sh
|
|
|
|
# Oppure reset manuale
|
|
docker ps -aq | xargs -r docker stop
|
|
docker ps -aq | xargs -r docker rm
|
|
docker system prune -af
|
|
```
|
|
|
|
## Vedi Anche
|
|
|
|
- [Script reset ambiente](../../../scripts/reset-env.sh)
|
|
- [Tutorial: Permessi Docker](../tutorial/02-docker-group-permissions.md)
|