wake-up-neo.com

docker-runc ist nicht auf dem System installiert

Ich habe kürzlich mein auf Centos 7 basierendes Gerät aktualisiert. Und seitdem kann ich keine meiner Docker starten. Hat jemand Erfahrung mit diesem Problem und wenn ja, wie haben Sie es behoben? Vielen Dank für Ihre wertvolle Hilfe . Unter dem Fehlerprotokoll 

docker run -it centos6_labs_ompi161_devtools3/usr/bin/docker-current: Fehlerantwort vom Daemon: Shim-Fehler: Docker-Runc ist nicht auf dem System installiert.

9
Nabil Ghodbane

Ich weiß, dass dies eine ziemlich alte Frage ist. Dies geschah jedoch, als ich von CentOS - Extras Docker auf Dockers eigene Docker-UpM upgedated wurde. Die Service-Datei unter /usr/lib/systemd/system/docker.service hatte die folgenden Zeilen in der ExecStart-Zeile fest codiert:

--add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
--default-runtime=docker-runc \
--exec-opt native.cgroupdriver=systemd \
--userland-proxy-path=/usr/libexec/docker/docker-proxy-current \

Standardmäßig enthält das Docker-ce-Paket nicht die gleichen Zeilen und die Dateipfade sind unterschiedlich. Nach dem Upgrade fügte ich Folgendes hinzu und die Container respektierten meine Startbefehle, ohne dass wie erwartet Daten verloren gingen:

 --add-runtime docker-runc=/usr/bin/docker-runc \
    --default-runtime=docker-runc \
    --exec-opt native.cgroupdriver=systemd \
    --userland-proxy-path=/usr/bin/docker-proxy

Hoffe das hilft jemand anderem!

2
billabongrob

Es scheint, als würde die Docker-RPM am Ende einen symbolischen Link übersehen.

https://access.redhat.com/solutions/2876431

und dies kann leicht behoben werden durch:

cd /usr/libexec/docker/
Sudo ln -s docker-runc-current docker-runc 
19
Nabil Ghodbane

Fügen Sie in Bezug auf die erste Antwort den Sym-Link in/usr/bin ein, um ihn im globalen Pfad zu aktivieren

Sudo ln -s /usr/libexec/docker/docker-runc-current /usr/bin/docker-runc
10
John Tee

Ich habe die Methode von Nabil Ghodbane ausprobiert, aber sie hat nicht funktioniert. Dank Billabongrobs Antwort habe ich einen Weg gefunden, dieses Problem zu beheben.

$ cat /etc/docker/daemon.json
{
    "log-level":"warn",
    "hosts": ["unix:///var/run/docker.sock","tcp://0.0.0.0:2375"],
    "runtimes": {
        "docker-runc": {
            "path": "/usr/libexec/docker/docker-runc-current"
        }
    },
    "add-runtime": "docker-runc=/usr/libexec/docker/docker-runc-current",
    "default-runtime": "docker-runc"
}

oder verwenden Sie diese Konfiguration in Ihrer Befehlszeile.

0
Drawn Yang

Bitte versuchen Sie dies

Fehler Shim-Fehler: docker-runc ist nicht auf dem System installiert

cd /usr/libexec/docker/
cp docker-runc-current /usr/bin/docker-runc
0
Ganesh Kumar