[FIX] Kan ikke oprette forbindelse til Docker-dæmonen på 'unix: ///var/run/docker.sock'

kommando som beskrevet nedenfor.



Bemærk: Denne metode fungerer kun for brugere, der har installeret Docker med APT-pakkehåndteringen. Hvis du installerede Docker via SNAP , henvise til Løsning 5 under.

  1. Åbn terminalen og udfør den første kommando - afmaske docker .
sudo systemctl afmasker docker

Hvis vi forsøger at starte dockertjeneste, når docker er maskeret, står vi muligvis over for fejlen'Kunne ikke starte docker.service: Enheden er maskeret.'Maske kan betragtes som en mere robust version af deaktivering. Når en enhedsfil maskeres, linkes enheden til'Dev / null. ’Du kan liste tilstanden for alle enhedsfiler med kommandoen -‘ $ systemctl liste-enhed-filer ''



2. Når docker-enheden er afmaskeret , vi kan start docker dæmon med systemctl-kommandoen. Det docker dæmon administrerer dockerobjekter som Images, Containers og Docker API-anmodninger. Udfør kommandoen nedenfor på kommandolinjen.



systemctl start docker
Start Docker Service

Start Docker Service



3. Til verificere om dockertjenesten er aktiv og kører . Vi bruger systemctl status kommando, som viser den aktuelle status for den bestemte tjeneste. Udfør kommandoen nedenfor på din terminal.

systemctl status docker
Docker-servicestatus

Docker-servicestatus

Fra ovenstående billede kan vi se det docker er aktiv og kører .



Løsning 2: Rens tjenesten 'Mislykket Docker Pull' og start Docker

Der er tilfælde, hvor du måske uventet lukker Docker, mens du trækker i en container. Sådanne situationer vil skjule docker.service og docker. stikkontakt filer. Docker.socket er en fil placeret på ‘/var/run/docker.sock 'og bruges til at kommunikere med Docker-dæmonen. Det bliver vi nødt til afmaske to-enhedens filer - docker .service og docker.daemon før fortsætter til start docker.

  1. Start Terminal og udføre kommandoer under:
systemctl unmask docker.service systemctl unmask docker.socket systemctl start docker.service
Start Docker Service

Start Docker Service

Hvis du stadig oplever fejlen, selv efter at du har udført nedenstående kommandoer, bliver vi nødt til det slet filerne i Beholder katalog, før du starter Docker igen. Containerd var en funktion introduceret i Docker 1.11 og bruges til at styre Docker-billedets livscyklus.

2. Åbn Terminal, og udfør nedenstående kommandoer. Sørg for, at du kender rodadgangskode da vi har brug for forhøjede privilegier for at udføre kommandoerne.

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

Genstart dockertjenesten

Løsning 3: Start Dockerd (Docker Daemon) Service

Dockerd er Docker-dæmonen, der lytter til Docker API'er og administrerer de forskellige Docker-objekter. Dockerd kan bruges som et alternativ til kommandoen ' $ systemctl start docker 'Som også bruges til at starte Docker-dæmonen.

  1. Åben Terminal og start dockerd ved at udføre kommandoen nedenfor:
sudo dockerd
Start dockerd

Start dockerd

Løsning 4: Start Docker med servicekommandoen

Hvis du bruger SysV init-system , så fungerer systemctl-kommandoen ikke for dig. Vi bliver nødt til at bruge servicekommando til start docker-dæmonen .

  1. starte Terminal og udføre kommandoerne nedenfor:
sudo service - status-all sudo service docker start
Start Docker-service

Start Docker-service

Løsning 5: Start Docker-tjenesten med Snap

Hvis du installerede Docker med Snap pakkehåndtering , skal du bruge snap-kommandoen til at styre docker-dæmonen.

Generelt administrerer Snap deres tjenester automatisk. I situationer som denne fejl kræver det imidlertid manuel indgriben. Nogle af de argumenter, du kan bruge med snap-kommandoen, inkluderer stop, start og genstart. I vores tilfælde bruger vi startparameteren.

  1. Åbn Terminal og udfør kommandoen nedenfor til start Docker .
sudo snap start docker
Start Docker

Start Docker

2. Udfør kommandoen nedenfor til verificere om Docker-tjenesten blev startet.

sudo snap-tjenester

Det vil liste alle kører snap-tjenester .

Snap-tjenester

Snap-tjenester

Hvis ovenstående kommandoer ikke virker for dig, skal du prøve tilslutning af docker: hjemmestik da den ikke er automatisk forbundet som standard. Når du er færdig, Start det Docker-service .

3. Start terminalen, og kør nedenstående kommandoer:

sudo snap connect docker: hjem: home sudo snap start docker
Start Docker

Start Docker

Løsning 6: Start Docker til brugere uden root P privilegier

Fejlen kan også opstå pga manglende forhøjede privilegier og brugeren har ikke adgang til 'unix: ///var/run/docker.sock.' Heldigvis er der en løsning. Vi eksporterer Docker Host-variablen til localhost via port 2375.

  1. Åbn terminalen, og kør kommandoen nedenfor:
eksporter DOCKER_HOST = tcp: // localhost: 2375
Eksporter DockerHost

Eksporter Docker-vært

Løsning 7: Geninstaller Docker

Hvis ovenstående løsninger ikke løser fejlen, er der stor sandsynlighed for, at du muligvis har installationsfejl. For at installere Docker korrekt i dit Linux-system skal du følge trinene fra Docker officielle hjemmeside .

4 minutter læst