So stoppen Sie Docker unter Linux

75

Meine Version des Betriebssystems Ubuntu 16.04. Ich möchte Docker stoppen, also laufe ich im Terminal:

sudo systemctl stop docker

Aber dieser Befehl hilft mir nicht:

gridsim1103 ~: ps ax | grep docker 
11347 ?        Sl     0:00 containerd-shim 487e3784f983274131d37bde1641db657e76e41bdd056f43ef4ad5adc1bfc518 /var/run/docker/libcontainerd/487e3784f983274131d37bde1641db657e76e41bdd056f43ef4ad5adc1bfc518 runc
14299 pts/2    S+     0:00 grep --color=auto docker
29914 ?        S      0:00 sudo dockerd -H gridsim1103:2376
29915 ?        Sl     4:45 dockerd -H gridsim1103:2376
29922 ?        Ssl    0:24 containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --shim containerd-shim --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --runtime runc
30107 ?        Sl     1:01 /usr/bin/docker-proxy -proto tcp -host-ip 188.184.80.77 -host-port 8500 -container-ip 192.17.0.2 -container-port 8500
30139 ?        Sl     0:00 /usr/bin/docker-proxy -proto tcp -host-ip 188.184.80.77 -host-port 8400 -container-ip 192.17.0.2 -container-port 8400

Version des dockerServers ist:

Server:
 Version:      1.12.1
 API version:  1.24 (minimum version )
 Go version:   go1.6.2
 Git commit:   23cf638
 Built:        Tue, 27 Sep 2016 12:25:38 +1300
 OS/Arch:      linux/amd64
 Experimental: false

Ich habe es auch erfolglos versucht:

 sudo service docker stop
Kenenbek Arzymatov
quelle

Antworten:

72

Die Ausgabe von ps auxsieht so aus, als hätten Sie Docker nicht über systemd / systemctl gestartet.

Es sieht so aus, als hätten Sie damit begonnen:

sudo dockerd -H gridsim1103:2376

Wenn Sie versuchen, es mit systemctl zu stoppen, sollte nichts passieren, da der resultierende Dockerd-Prozess nicht von systemd gesteuert wird. Das Verhalten, das Sie sehen, wird also erwartet.

Der richtige Weg, um Docker zu starten, ist die Verwendung von systemd / systemctl:

systemctl enable docker
systemctl start docker

Danach sollte Docker beim Systemstart starten.

BEARBEITEN: Da der Docker-Prozess bereits ausgeführt wird, beenden Sie ihn einfach, indem Sie auf dem Terminal, auf dem Sie ihn gestartet haben, STRG + C drücken. Oder senden Sie ein Kill-Signal an den Prozess.

Alexander Block
quelle
25

In meinem Fall war es weder ein System- noch ein Cron-Job, aber es war ein Kinderspiel. Also musste ich rennen:

sudo snap stop docker
sudo snap remove docker

... und der letzte Befehl endete eigentlich nie, ich weiß nicht warum: Dieses Schnapp-Ding ist wirklich ein Schmerz. Also rannte ich auch:

sudo apt purge snap

:-)

xtof54
quelle
1
Das ist sehr nützlich, mein Dokerd-Prozess hat 200% CPU beansprucht, aber jetzt ist es ruhiger. Vielen Dank!
Florent