[FIX] No es pot connectar al dimoni Docker a 'unix: ///var/run/docker.sock'

com es descriu a continuació.



Nota: Aquest mètode només funciona per als usuaris que han instal·lat Docker amb el gestor de paquets APT. Si heu instal·lat Docker mitjançant SNAP , consulteu Solució 5 baix.

  1. Obriu la terminal i executeu la primera ordre - desenmascarar acoblador .
sudo systemctl desenmascara el mocker

Si intentem iniciar el servei de Docker quan Docker està emmascarat, és possible que ens enfrontem a l’error'No s'ha pogut iniciar docker.service: la unitat està emmascarada.'La màscara es pot considerar una versió més robusta de la desactivació. Quan s’enmascara un fitxer d’unitat, s’enllaça amb la unitat‘Dev / nul. ’Podeu llistar l’estat de tots els fitxers d’unitat amb l’ordre -‘ $ systemctl list-unit-files '



2. Un cop estigui la unitat acobladora desenmascarat , podem arrenca el mollador dimoni amb l'ordre systemctl. El acoblador dimoni gestiona objectes de Docker com ara imatges, contenidors i sol·licituds de l'API Docker. Executeu l'ordre següent a la línia d'ordres.



systemctl arrenca la base
Inicieu el servei Docker

Inicieu el servei Docker



3. Per a verificar si el servei d’acoblament està actiu i en execució . Farem servir el fitxer estat del sistema , que mostra l'estat actual del servei concret. Executeu l'ordre següent al terminal.

acoblador d'estat systemctl
Estat del servei de Docker

Estat del servei de Docker

Des de la imatge anterior, ho podem veure el mollador està actiu i en execució .



Solució 2: netejar un 'Fault Docker Pull' i iniciar el servei Docker

Hi ha casos en què podríeu tancar inesperadament Docker mentre treieu un contenidor. Aquestes situacions emmascararan el docker.service i docker .socket Fitxers. Docker.socket és un fitxer situat a ‘/var/run/docker.sock 'i s’utilitza per comunicar-se amb el dimoni Docker. Ho necessitarem desenmascarar els fitxers de dues unitats: docker .service i docker.daemon abans procedint a iniciar el mollador.

  1. Inicieu el terminal i executeu el fitxer ordres baix:
systemctl desenmascarar docker.service systemctl desenmascarar docker.socket systemctl iniciar docker.service
Inicieu el servei Docker

Inicieu el servei Docker

Si continueu experimentant l’error fins i tot després d’executar les ordres següents, ho necessitarem esborrar els fitxers del fitxer Containerd directori abans de tornar a iniciar Docker. Containerd va ser una característica introduïda a Docker 1.11 i s'utilitza per gestionar el cicle de vida de les imatges de Docker.

2. Obriu Terminal i executeu les ordres següents. Assegureu-vos que coneixeu el contrasenya d’arrel ja que necessitarem privilegis elevats per executar les ordres.

sudo su service docker stop cd / var / run / docker / libcontainerd rm -rf containerd / * rm -f docker-containerd.pid service docker start
Reinicieu el servei docker

Reinicieu el servei docker

Solució 3: Inicieu el servei Dockerd (Docker Daemon)

Dockerd és el dimoni Docker que escolta les API de Docker i gestiona els diversos objectes de Docker. Dockerd es pot utilitzar com a alternativa a l'ordre ' $ systemctl start docker ‘Que també s’utilitza per iniciar el dimoni Docker.

  1. Obert terminal i començar dockerd executant l'ordre següent:
sudo dockerd
Inicieu dockerd

Inicieu dockerd

Solució 4: Inicieu Docker amb l'ordre Servei

Si utilitzeu el fitxer Sistema d'inici SysV , llavors l'ordre systemctl no us funcionarà. Haurem d’utilitzar el fitxer ordre de servei a Inicia el dimoni docker .

  1. llançar el terminal i executar les ordres següents:
sudo service --status-all sudo service docker start
Inicieu el servei Docker

Inicieu el servei Docker

Solució 5: inicieu el servei Docker amb Snap

Si heu instal·lat Docker amb el fitxer Gestor de paquets Snap , haureu d'utilitzar l'ordre snap per gestionar el dimoni de la base.

En general, Snap gestiona els seus serveis automàticament. No obstant això, en situacions com aquest error, caldrà una intervenció manual. Alguns dels arguments que podeu utilitzar amb l'ordre snap inclouen stop, start i reinicia. En el nostre cas, utilitzarem el paràmetre start.

  1. Obriu Terminal i executeu l'ordre següent a iniciar Docker .
sudo snap start docker
Inicieu Docker

Inicieu Docker

2. Executeu l'ordre següent a verificar si el Es va iniciar el servei Docker.

serveis sudo snap

Serà llista tot corrent serveis instantanis .

Serveis Snap

Serveis Snap

Si les ordres anteriors no us funcionen, proveu-ho connectant la base: endoll domèstic ja que no es connecta automàticament per defecte. Un cop fet, començar el Servei d’acoblament .

3. Inicieu el terminal i executeu les ordres següents:

sudo snap connect docker: home: home sudo snap start docker
Inicieu Docker

Inicieu Docker

Solució 6: Inicieu Docker per a usuaris sense Root P privilegis

També es pot produir l'error a causa de manca de privilegis elevats i l’usuari no té accés a ‘unix: ///var/run/docker.sock.’ Per sort, hi ha una solució alternativa. Exportarem la variable Docker Host al localhost mitjançant el port 2375.

  1. Obriu el terminal i executeu l'ordre següent:
exportació DOCKER_HOST = tcp: // localhost: 2375
Exporta DockerHost

Exporta l'amfitrió Docker

Solució 7: torneu a instal·lar Docker

Si les solucions anteriors no resolen l’error, hi ha una gran probabilitat de tenir errors d’instal·lació. Per instal·lar correctament Docker al vostre sistema Linux, seguiu els passos de Lloc web oficial de Docker .

4 minuts de lectura