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

Docker-Dienst kann in Ubuntu 16.04 nicht gestartet werden

Nun, endlich habe ich es behoben

Alles, was Sie tun müssen, ist, einen anderen Speichertreiber zu laden in meinem Fall verwende ich overlay :

  1. Docker-Dienst deaktivieren :sudo systemctl stop docker.service
  2. Starten Sie den Docker-Daemon (overlay Treiber):sudo docker daemon -s overlay
  3. Demo-Container ausführen :sudo docker run hello-world

Um diese Änderungen dauerhaft zu machen, müssen Sie /etc/default/docker bearbeiten Datei und fügen Sie die Option hinzu:

DOCKER_OPTS="-s overlay"

Nächstes Mal Docker-Dienst geladen wird, wird docker daemon -s overlay ausgeführt


Die folgenden Demaskierungsbefehle haben bei mir funktioniert (Ubuntu 18). Hoffe es hilft jemandem da draußen... :-)

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

Aktualisieren

Es scheint, dass in neueren Versionen von Docker und Ubuntu die Unit-Datei für Docker einfach maskiert ist (zeigt auf /dev/null).
Sie können dies überprüfen, indem Sie die folgenden Befehle im Terminal ausführen:

sudo file /lib/systemd/system/docker.service
sudo file /lib/systemd/system/docker.socket

Sie sollten sehen, dass die Unit-Datei symbolisch auf /dev/null verweist.
In diesem Fall müssen Sie nur dem Vorschlag von S34N folgen und Folgendes ausführen:

sudo systemctl unmask docker.service
sudo systemctl unmask docker.socket
sudo systemctl start docker.service
sudo systemctl status docker

Ich werde auch den ursprünglichen Beitrag behalten, der das Fehlerprotokoll beantwortet, das besagt, dass der Speichertreiber ersetzt werden sollte:

Originalbeitrag

Ich hatte das gleiche Problem und habe versucht, es mit dem Vorschlag von Salva Cort zu beheben, aber /etc/default/docker gedruckt sagt:

# DIESE DATEI GILT NICHT FÜR SYSTEMD

Hier ist also eine dauerhafte Lösung, die für systemd (Ubuntu 15.04 und höher) funktioniert:

  1. Erstellen Sie eine neue Datei /etc/systemd/system/docker.service.d/overlay.conf mit folgendem Inhalt:

    [Service]
    ExecStart=
    ExecStart=/usr/bin/docker daemon -H fd:// -s overlay
    
  2. Flush-Änderungen durch Ausführen von:

    sudo systemctl daemon-reload
    
  3. Überprüfen Sie, ob die Konfiguration geladen wurde:

    systemctl show --property=ExecStart docker
    
  4. Docker neu starten:

    sudo systemctl restart docker
    

Ich hatte das gleiche Problem nach dem Upgrade von Docker von 17.05-ce auf 17.06-ce über docker-machine

  1. Aktualisieren Sie /etc/systemd/system/docker.service.d/10-machine.conf

    ersetzen

    `docker daemon` => `dockerd`
    

    Beispiel aus

    [Service]
    ExecStart=
    ExecStart=/usr/bin/docker deamon -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --storage-driver aufs --tlsverify --tlscacert /etc/docker/ca.pem --tlscert /etc/docker/server.pem --tlskey /etc/docker/server-key.pem --label provider=generic
    Environment=
    

    zu

    [Service]
    ExecStart=
    ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --storage-driver aufs --tlsverify --tlscacert /etc/docker/ca.pem --tlscert /etc/docker/server.pem --tlskey /etc/docker/server-key.pem --label provider=generic
    Environment=
    
  2. Flush-Änderungen durch Ausführen von:

    sudo systemctl daemon-reload
    
  3. Docker neu starten:

    sudo systemctl restart docker
    

Linux
  1. So installieren Sie Icinga 2 unter Ubuntu 20.04

  2. So installieren Sie Docker unter Ubuntu 22.04

  3. Nagios-Dienst kann nicht gestartet werden (CentOS/RHEL)

  4. Der postgresql-Dienst kann unter CentOS 7 nicht gestartet werden

  5. Docker – Paket Docker-Engine konnte nicht gefunden werden

So installieren Sie Docker unter Ubuntu 18.04

So starten Sie den Dienst beim Booten unter Ubuntu 22.04

So installieren Sie Docker unter Ubuntu 20.04

So installieren Sie Docker unter Ubuntu 20.04 LTS

Ubuntu – Dienste starten, stoppen, neu starten

Ubuntu:OpenJDK 8 - Paket kann nicht gefunden werden