Fix: Kan inte ansluta till Docker Daemon
Du kan vara väldigt förvirrad om en Linux-terminal slänger en kan inte ansluta till Docker-demonfelet på dig, för att Docker-demonen än troligtvis redan körs när du ser det. Medan du vill se till att det är så kommer du förmodligen att bli förbryllad när du upptäcker att detta fel inte ens har att göra med att tjänsten inte startas. Det blir oftast kastat på användare som inte har lagt sig till Docker-gruppen.
Docker utfärdar en separat användargrupp på Linux-system, och de som har användarkonton som inte läggs till det kommer inte att kunna ansluta till den. Tänk på att lägga till ett användarkonto i Docker-gruppen är funktionellt root-ekvivalent eftersom daemonen alltid körs som root-användare. Detta kan förväntas på ett användar Ubuntu Server-system, men det kommer säkert att vara något att tänka på för dem som kör Docker på Arch, Fedora eller Debian.
Metod 1: Kontrollera status för Docker Service
Medan det verkligen är säkert måste du kontrollera om Docker-tjänsten körs. Vid ett terminalfönster, kör systemtl status docker.service som en vanlig användare. Du bör få lite information om vilket PID-nummer Dockers demon har fått tilldelats. Om du inte gör det måste du starta om tjänsten.
Om du har startat om det, försök göra vad som helst som kastade dig, det går inte att ansluta till Docker Daemon Error. Om det nu fungerar, så har du bara inte haft tjänsten och behöver inte oroa dig för något annat än att det inte gick att springa. Tyvärr fungerar det inte i flertalet fall så du måste gå vidare i de situationerna.
Metod 2: Lägga till användare till Docker-gruppen
Kör dockningsinformation från kommandoraden, som normalt ger dig kanalen att inte ansluta till Docker Daemon-felet en gång till.
PRO TIPS: Om problemet är med din dator eller en bärbar dator, bör du försöka använda Reimage Plus-programvaran som kan skanna förvaret och ersätta korrupta och saknade filer. Detta fungerar i de flesta fall där problemet uppstått på grund av systemkorruption. Du kan ladda ner Reimage Plus genom att klicka härOm så är fallet måste du köra sudo groupadd docker; sudo usermod -aG docker $ USER för att lägga till dig själv i rätt grupp. Om detta skulle ge ett fel eftersom du inte har usermod kan du ändra kommandot för att köra som sudo groupadd docker; sudo gpasswd-a $ USER docker, men det borde i allmänhet inte vara ett problem eftersom de flesta kommersiella Linux-distributioner arbetar med samma uppsättning verktyg. Under alla omständigheter kan du köra newgrp docker så att du kan bli inloggad i den nya dockergruppen om du inte redan är.
Tänk på att det alltid kommer att lägga till användaren du är inloggad som, vilket inte borde vara för mycket av ett problem på de flesta system som inte har flera konton bortom den enanvändaren och rootkontot. Eftersom du har administratörsbehörighet för tillfället, kör sudo chgrp docker / usr / bin docker; sudo chgrp docker /var/run/docker.sock för att fixa behörigheterna på dockeruttaget och kommandot. Vanligtvis är hushållsfilen bara tillhörande rotanvändaren så det kommer att korrigera det.
Efter att ha kört det, borde du inte ha några problem eftersom det tillhör samma grupp som du skapade i föregående kommando. Du kommer att vilja testa för att se till att dockaren körs utan sudo, men skriv docka kundtjänst som en vanlig användare för att se till att du inte får några andra fel.
Vid det här laget kommer fortfarande få användare att få något slags felmeddelande. De flesta saker borde korrigeras vid denna tidpunkt, men om du fortfarande har problem kanske du vill logga ut helt. Försök öppna ett annat terminalemulatorfönster, men om det inte fungerar fungerar det ibland att få ner systemet för en fullständig omstart om det är möjligt
Metod 3: Använda ACL för att ändra Docker Metadata
Om du inte vill tillhöra en grupp som gör dig som en root-användare, kan du ställa in socketfilen för att fungera med endast vissa behörigheter. Du kan ignorera gpasswd-processen om du föredrar att göra det på så sätt. Måste skanna filsystemet för olika ACL-poster i en börda för dem som gör en säkerhetsrevision, men det förhindrar dig från att behöva använda dockergruppen helt.
Om du vill göra det här så kan du köra sudo setfacl -m användare: namn: rw /var/run/docker.sock medan du byter användare och namn med lämpliga etiketter. Detta ger tillstånd att komma åt Docker-uttaget på /var/run/docker.sock, vilket ska fungera med Debian och Ubuntu Server.
PRO TIPS: Om problemet är med din dator eller en bärbar dator, bör du försöka använda Reimage Plus-programvaran som kan skanna förvaret och ersätta korrupta och saknade filer. Detta fungerar i de flesta fall där problemet uppstått på grund av systemkorruption. Du kan ladda ner Reimage Plus genom att klicka här