Подтвердить что ты не робот

Как остановить докер

Моя версия ОС Ubuntu 16.04. Я хочу остановить докер, поэтому я запускаю в терминале:

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
4b9b3361

Ответ 1

Вывод ps aux выглядит так, будто вы не запускали докер через systemd/systemctl.

Похоже, вы начали с:

sudo dockerd -H gridsim1103:2376

Когда вы пытаетесь остановить его с помощью systemctl, ничего не должно произойти, так как полученный процесс докерра не контролируется systemd. Таким образом, поведение, которое вы видите, ожидается.

Правильный способ запуска докера - использовать systemd/systemctl:

systemctl enable docker
systemctl start docker

После этого докер запускается при запуске системы.

РЕДАКТИРОВАТЬ. Поскольку у вас уже есть процесс докеры, просто убейте его, нажав CTRL + C на терминале, на котором вы его запустили. Или отправьте сигнал об ошибке в процесс.

Ответ 2

В моем случае это не было ни systemd, ни cron-работой, но это было несложно. Поэтому мне пришлось бежать:

sudo snap stop docker
sudo snap remove docker

... и последняя команда на самом деле никогда не заканчивалась, я не знаю почему: эта штуковина действительно вызывает боль. И я тоже побежал:

sudo apt purge snap

:-)