如何在Linux下停止Docker


82

我的OS版本Ubuntu 16.04。我想停止docker,所以我在终端中运行:

sudo systemctl stop docker

但是此命令对我没有帮助:

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

docker服务器版本为:

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

我也尝试失败:

 sudo service docker stop

Answers:


74

ps aux看起来您没有通过systemd / systemctl启动docker的输出。

看来您是从以下位置开始的:

sudo dockerd -H gridsim1103:2376

当您尝试使用systemctl停止它时,什么也不应该发生,因为生成的dockerd进程不受systemd的控制。因此,您看到的行为是预期的。

启动docker的正确方法是使用systemd / systemctl:

systemctl enable docker
systemctl start docker

之后,docker应该在系统启动时启动。

编辑:由于您已经在运行docker进程,只需在启动它的终端上按CTRL + C即可将其杀死。或向进程发送终止信号。


28

就我而言,这既不是系统化的任务,也不是cron的工作,但这很简单。所以我不得不跑:

sudo snap stop docker
sudo snap remove docker

...而最后一个命令实际上从未结束,我不知道为什么:这急事真的很痛苦。所以我也跑了:

sudo apt purge snap

:-)


1
这非常有用,我的dokerd进程占用了200%的CPU,但是现在它变得更安静了。谢谢!
佛罗伦萨(Florent)

您可能会使用,sudo snap disable docker因此docker在下次启动时不会启动。在这种情况下,您需要运行sudo snap start docker
docker

4

如果您没有systemctl并通过以下方式启动docker守护程序:

sudo service docker start

您可以通过以下方式阻止它:

sudo service docker stop
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.