GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So beheben Sie den Fehler „Verbindung zum Docker-Daemon kann nicht hergestellt werden“.

Einführung

Benutzer, die neu bei Docker sind, finden es möglicherweise schwierig, es zu verwenden, da sie oft direkt nach der Installation auf ein Problem stoßen. Die „Verbindung zum Docker-Daemon kann nicht hergestellt werden“ Fehler in Docker tritt normalerweise auf, wenn der docker-compose build ausgeführt wird Befehl.

In diesem Tutorial gehen wir auf mögliche Ursachen für „Verbindung zum Docker-Daemon nicht möglich“ ein Fehler und wie Sie ihn lösen können.

Voraussetzungen

  • Zugriff auf die Befehlszeile oder das Terminal
  • Eine funktionierende Docker-Installation

Behebung des Fehlers „Verbindung zum Docker-Daemon nicht möglich“

Es gibt mehrere Möglichkeiten, das Problem „Verbindung zum Docker-Daemon kann nicht hergestellt werden“ zu beheben Error. Wenn eine Lösung für Sie nicht funktioniert, fahren Sie mit der nächsten Methode fort, bis Sie das Problem behoben haben.

Methode 1:Überprüfen Sie die Docker-Engine

Wenn die Docker-Engine nicht ausgeführt wird, docker-compose kann nicht darauf zugreifen, was den Fehler erzeugt.

1. Prüfen Sie zunächst, ob die Docker-Engine läuft:

sudo service docker status

2. Wenn die Docker-Engine nicht funktioniert, starten Sie sie mit dem folgenden Befehl:

sudo service docker start

3. Nachdem Sie die Docker-Engine gestartet haben, versuchen Sie, docker-compose build auszuführen erneut befehlen. Wenn der Fehler weiterhin besteht, versuchen Sie eine der folgenden Lösungen.

Methode 2:Weisen Sie dem Docker-Unix-Socket die Eigentümerschaft zu

Die „Verbindung zum Docker-Daemon kann nicht hergestellt werden“ Fehler tritt auch auf, wenn der Unix-Socket-Datei für Docker nicht der richtige Besitz zugewiesen ist.

1. Überprüfen Sie den Besitz des Docker-Unix-Sockets:

sudo ls -la /var/run/docker.sock

2. Gewähren Sie dem Benutzer bei Bedarf Eigentum mit:

sudo chown [username]:docker /var/run/docker.sock

Methode 3:Überprüfen Sie die Eigentümerschaft verwendeter Dateien

Eigentumsprobleme können sich auch auf Dateien erstrecken, die von Ihrem Docker-Build verwendet werden. Wenn Docker eine Datei verwenden muss, auf die es nicht zugreifen kann, führt dies zu einem „cannot connect to the Docker daemon“ Fehler.

1. Führen Sie den docker build aus Befehl für jeden einzelnen Container. Dadurch erhalten Sie eine detaillierte Ausgabe, die auf potenzielle Fehler hinweist.

2. Überprüfen Sie die Ausgabe für jeden Container und halten Sie Ausschau nach „Kann keine Verbindung zum Docker-Daemon herstellen“ Fehlermeldung. Wenn es ein Problem mit dem Dateibesitz gibt, listet der Fehlerbericht die Dateien auf, die der docker build Befehl kann nicht zugreifen.

3. Es gibt mehrere Möglichkeiten, das Problem des Eigentums an verwendeten Dateien zu lösen:

  • Sie können die fraglichen Dateien einfach entfernen, indem Sie sie löschen, aber dies wirkt sich auf alle anderen Builds aus, die dieselben Dateien verwenden.
  • Eine andere Methode ist das Hinzufügen von .dockerignore Datei zu Ihrem aktuellen Build, wodurch die Dateien ausgeschlossen werden, auf die Ihr Build nicht zugreifen kann.
  • Schließlich können Sie den Eigentümer der Datei ändern mit:
sudo chown [username]:docker /your/file/location

Methode 4:Fügen Sie Ihren Benutzer zur Docker-Gruppe hinzu

Das Fehlen der richtigen Benutzerrechte löst den Fehler ebenfalls aus. Sie müssen auf die Docker-Engine zugreifen können, ohne sudo zu verwenden Befehl.

1. Um dieses Problem zu lösen, fügen Sie den aktuellen Benutzer mit dem usermod-Befehl zur Docker-Gruppe hinzu:

sudo usermod -aG docker [username]

2. Melden Sie sich ab und wieder an, um die Änderungen zu bestätigen.

Methode 5:Umgebungstabellen unter OS X hinzufügen

Wenn Sie Docker unter OS X ausführen, müssen Sie möglicherweise Umgebungsvariablen hinzufügen:

1. Starten Sie zuerst die virtuelle Docker-Maschine:

docker-machine start

2. Holen Sie sich die Umgebungsvariablen für Docker mit:

docker-machine env

3. Setzen Sie abschließend die Umgebungsvariablen:

eval "$(docker-machine env default)"

Ubuntu
  1. So beheben Sie die Fehlermeldung „550 Senderüberprüfung fehlgeschlagen“.

  2. Wie richte ich den Netzwerk-Docker in Ubuntu Gnome 15.10 sauber ein?

  3. Wie verbinde ich den Server mit einem Wep-verschlüsselten drahtlosen Netzwerk?

  4. So aktualisieren/fügen Sie eine Datei im Docker-Image hinzu

  5. So konfigurieren Sie Btrfs als Speicher-Engine in Docker

So beheben Sie den temporären Fehler bei der Namensauflösung

So aktualisieren Sie die Docker-Version von ONLYOFFICE Docs unter Ubuntu

So beheben Sie „Die Update-Informationen sind veraltet“ in Ubuntu Linux

So verbinden Sie sich vom Terminal in Ubuntu Linux mit WLAN

So stellen Sie eine Verbindung zu Localhost in einem Docker-Container her

So überprüfen Sie, ob der Docker-Daemon oder ein Container ausgeführt wird