linux - sock - ubuntu 18 docker permission denied




Impossibile connettersi al demone Docker su unix:/var/run/docker.sock. Il daemon docker è in esecuzione? (12)

Ho applicato tutte le soluzioni disponibili su Internet ma non riesco ancora a eseguire Docker.

Voglio usare Scrapy Splash sul mio server.

Ecco la history dei comandi che ho eseguito.

docker run -p 8050:8050 scrapinghub/splash
sudo docker run -p 8050:8050 scrapinghub/splash
sudo usermod -aG docker $(whoami)
sudo docker run -p 8050:8050 scrapinghub/splash
newgrp docker
sudo docker run -p 8050:8050 scrapinghub/splash
reboot
sudo docker run -p 8050:8050 scrapinghub/splash
docker run -p 8050:8050 scrapinghub/splash

Puoi vedere che ho provato a riavviare anche il mio server, ma non ha aiutato.

vedi l'output di ps -aux | grep docker ps -aux | grep docker

[email protected]:/var/www/html# ps aux | grep docker
root      8524  0.0  0.8 127904 13964 ?        Ssl  17:21   0:00 /usr/bin/dockerd --raw-logs
root      8534  0.0  0.3  90588  5012 ?        Ssl  17:21   0:00 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --shim docker-containerd-shim --runtime docker-runc
root      8543  0.0  0.0   8812   764 pts/1    S+   17:21   0:00 grep --color=auto docker
root     16356  0.0  0.0  17200   964 pts/1    S    17:14   0:00 newgrp docker
root     20080  0.0  0.0  17200   964 pts/1    S    17:06   0:00 newgrp docker
root     30221  0.0  0.0  17200   964 pts/1    S    17:09   0:00 newgrp docker

È possibile ottenere questo errore se la finestra mobile non si chiude in modo pulito. La seguente risposta è per il pacchetto snap docker.

Esegui la snap logs docker e cerca quanto segue:

Error starting daemon: pid file found, ensure docker is not running or delete /var/snap/docker/179/run/docker.pid

L'eliminazione di quel file e il riavvio della finestra mobile ha funzionato per me.

rm /var/snap/docker/179/run/docker.pid
snap stop docker
snap start docker

Assicurati di sostituire "179" con il numero di versione appropriato


Assicurati che le informazioni in questo percorso /etc/docker/daemon.json

{
  "registry-mirror": [
    "https://registry.docker-cn.com"
  ],
  "insecure-registries": [
    "192.168.199.100:5000"
  ]
}

Elimina

"insecure-registries": [
    "192.168.199.100:5000"
]

e funziona bene inserisci la descrizione dell'immagine qui


Ho avuto lo stesso problema per il nodo in esecuzione di gitlab CI: lts image:

  • Ho appena riavviato il demone docker e riavviato il contenitore, ha funzionato per me.

Ho avuto questo problema dopo aver chiuso la finestra mobile tirando una docker pull mongo contenitore docker pull mongo . All'inizio stavo ricevendo strani errori, quindi ho eliminato la docker sudo apt-get purge docker.io e reinstallato sudo apt-get install docker.io ... tutto questo non ha fatto nulla. Non riuscivo nemmeno a far funzionare il container ciao-mondo. La soluzione corretta per me almeno era:

 systemctl unmask docker.service systemctl unmask docker.socket systemctl start docker.service 

Dopo questo ho potuto tirare mongo e correre il mondo ciao.

Saluti!


Innanzitutto, prova con sudo , poiché l'utente corrente potrebbe non disporre delle autorizzazioni di accesso per comunicare con il demone docker, ad esempio /var/run/docker.sock

Se il problema persiste, dopo l'installazione, basta semplicemente arrestare il daemon docker come,

$ sudo nohup docker daemon -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

E, esegui il comando seguente per avviare il demone in background,

$ sudo usermod -aG docker

Per semplificare il lavoro con Docker, è necessario aggiungere il nome utente al gruppo di utenti Docker. L'aggiunta di un utente al gruppo può essere eseguita con il comando sottostante aggiungendo il nome utente alla fine

sudo dockerd

Inoltre, questo passaggio è menzionato nella documentazione ufficiale dei passaggi post-installazione della finestra mobile per Linux ( https://docs.docker.com/engine/installation/linux/linux-postinstall/ )

Gli utenti di Ubuntu 16.04 possono seguire questi passaggi,

Modifica del file interno /lib/systemd/system/docker.service : ExecStart = / usr / bin / dockerd fd: // con ExecStart = / usr / bin / dockerd -H tcp: //0.0.0.0: 2375

Modifica del file interno /etc/init.d/docker :

DOCKER_OPTS = con DOCKER_OPTS = "- H **** tcp: //0.0.0.0: 2375 "

e quindi riavviare il computer. E inizia a giocare con la finestra mobile.



Questo di solito si verifica se non si è arrestato la finestra mobile probabilmente.

Risolvere

service docker stop
cd /var/run/docker/libcontainerd
rm -rf containerd/*
rm -f docker-containerd.pid
service docker start

quindi "docker run ...." per scaricare l'immagine e avviare il contenitore come al solito


Questo ha funzionato per me, potrebbe funzionare anche per te se stai usando Ubuntu 16 o 18 (anche 14 potrebbero funzionare). Facile da provare:

Vai a Ubuntu Software, digita Docker. Disinstallare la finestra mobile (108 mb) se è preinstallato lì. Installa finestra mobile Ora esegui i comandi e vedi se arriva lo stesso errore

L'errore:

Dopo aver eseguito i passaggi precedenti.

Come puoi vedere, ha funzionato :)


Stavo cercando di eseguire la finestra mobile (appena installata) in un'istanza di AWS quando appare il messaggio. Scrivo solo sudo service docker start e funziona bene per me.

Vedi anche AWS con Docker


Sto correndo su root e ho provato di seguito, ha funzionato:

service docker start

export DOCKER_HOST="tcp://0.0.0.0:2375"

export DOCKER_HOST = tcp: // localhost: 2375 è perfetto per chiunque non abbia accesso sudo e l'utente non abbia accesso a unix: ///var/run/docker.sock


usalo nell'esportazione ubuntu DOCKER_HOST = tcp: // localhost: 2375





ubuntu-14.04