Errore 'Autorizzazione negata' del Docker

Errore Autorizzazione Negata Del Docker



Quando lavori con Docker, potresti riscontrare un'istanza in cui il comando restituisce un errore di 'autorizzazione negata'. Questo errore si verifica quando si tenta di eseguire Docker senza autorizzazioni sufficienti per il comando.

Docker richiede permessi sudo o root per eseguire i comandi associati per impostazione predefinita. Il tentativo di eseguire qualsiasi comando senza i privilegi richiesti porta al famigerato errore di 'autorizzazione negata'.







Questo tutorial fornisce i vari metodi e tecniche che è possibile utilizzare per correggere l'errore 'autorizzazione negata' quando si tenta di eseguire i comandi Docker.



Tieni presente che non copre il processo di esecuzione di Docker in un ambiente senza root. Puoi controllare il nostro tutorial su Docker rootless nella seguente risorsa:



Requisiti:

Come puoi immaginare, per seguire questo post, è necessario disporre di quanto segue:





    1. Docker versione 20.0 e successive
    2. Autorizzazioni Sudo o root sul sistema host

Qual è l'errore 'Autorizzazione negata'?

Quando si verifica l'errore 'autorizzazione negata' in Docker, significa che il sistema host non può stabilire una comunicazione con il demone Docker a causa di autorizzazioni insufficienti. Un esempio è mostrato di seguito:

$ esecuzione della finestra mobile -Esso busybox sh



Se riscontri l'errore indicato, puoi utilizzare alcuni dei seguenti metodi per sapere come risolverlo.



Metodo 1: eseguire Docker come root

Il primo e più ovvio metodo per risolvere l’errore “permesso negato” di Docker è utilizzare il comando “sudo”. Se disponi dei privilegi sudo, puoi risolverlo eseguendo il comando associato utilizzando sudo.

Ad esempio, per correggere il suddetto errore, possiamo aggiungere sudo prima del comando come segue:

$ sudo esecuzione della finestra mobile -Esso busybox sh



Come puoi vedere, Docker estrae con successo le immagini richieste ed esegue il contenitore.

Metodo 2: riavviare il demone Docker

A volte, puoi ricevere l'errore 'autorizzazione negata' in Docker se il motore ha un problema. Invece di rintracciare manualmente il problema, puoi tentare un rapido riavvio del demone Docker per ricaricarlo.

Inizia controllando lo stato del demone Docker come segue:

$ finestra mobile di stato systemctl docker



Dopo esserti assicurato che Docker sia in esecuzione, riavvia il servizio con il seguente comando:

$ sudo systemctl riavvia la finestra mobile


Questo dovrebbe avviare il demone Docker e risolvere qualsiasi potenziale problema che potrebbe impedirti di eseguire qualsiasi comando.

Metodo 3: abilitare l'utente non root

Un altro metodo che puoi utilizzare per risolvere l'errore 'autorizzazione negata' in Docker è consentire agli utenti non root di eseguire i comandi Docker.

Per abilitare questo metodo, accedi al sistema host e crea un nuovo gruppo per Docker.

$ sudo gruppoaggiungere -F finestra mobile


Successivamente, aggiungi qualsiasi utente che desideri al gruppo Docker come segue:

$ sudo usermod -aG suggerimento linux per la finestra mobile


Il comando precedente dovrebbe aggiungere l'utente linuxhint al gruppo Docker.

Infine, applica le modifiche del gruppo alla sessione corrente utilizzando il seguente comando:

$ finestra mobile newgrp


Una volta completato, puoi eseguire qualsiasi comando Docker senza utilizzare sudo per nessun utente nel gruppo Docker.

Metodo 4: riconfigurare le autorizzazioni Docker

Il prossimo metodo che puoi utilizzare è reimpostare le autorizzazioni per i socket Docker. Inizia modificando la proprietà del socket Docker Unix eseguendo il seguente comando:

$ sudo chown root:docker / era / correre / docker.sock


Successivamente, assumi la proprietà della directory Docker nascosta nella tua home directory utilizzando il comando come segue:

$ sudo chown -R ' $UTENTE ' : ' $UTENTE ' $CASA / .docker


Infine, assegna al gruppo i permessi di lettura e scrittura alla directory come segue:

$ sudo chmod -R sol+rw ' $CASA /.docker'


I metodi forniti dovrebbero impostare autorizzazioni sufficienti per i file e le directory Docker essenziali.

Conclusione

In questo tutorial, abbiamo imparato come utilizzare i quattro metodi principali per risolvere l'errore 'autorizzazione negata' di Docker quando si richiama un comando Docker.