如何停止和移除 docker 容器?

pus*_*pop 12 bash software-uninstall docker

我正在尝试删除一个 docker/image/container 以及所有与 docker 有某种联系的东西,但首先我需要停止它。当我尝试执行此命令时:

docker stop $(docker ps -a -q)
Run Code Online (Sandbox Code Playgroud)

它给了我一个错误:

[:/home/imran] 1 $ docker stop $(docker ps -a -q)

2015/01/16 00:37:38 Get http:///var/run/docker.sock/v1.14/containers/json?all=1: dial unix /var/run/docker.sock: permission denied

Usage: docker stop [OPTIONS] CONTAINER [CONTAINER...]  

Stop a running container by sending SIGTERM and then SIGKILL after a grace period

  -t, --time=10      Number of seconds to wait for the container to stop before killing it. Default is 10 seconds.
Run Code Online (Sandbox Code Playgroud)

如何卸载 docker 容器?

pus*_*pop 12

我修好了!请不要忘记 - 您在容器中的所有数据都将被删除!

所以,首先我们需要执行这个命令:

# adding new group
$ sudo groupadd docker

# adding user to the 'docker' group
$ sudo gpasswd -a ${your_username} docker

# restart the docker (documentation suggests to use 'docker.io' instead of 'docker',
# for me both variants work just fine!
$ sudo service docker restart
Run Code Online (Sandbox Code Playgroud)

然后我们需要注销,不要使用 GUI 变体,因为它对我不起作用,我对此感到失望。

相反,请使用以下命令:

sudo pkill -u username
Run Code Online (Sandbox Code Playgroud)

那么我们需要...

1. 杀死所有正在运行的容器

sudo docker kill $(docker ps -q)
Run Code Online (Sandbox Code Playgroud)

2. 删除所有停止的容器

sudo docker rm $(docker ps -a -q)
Run Code Online (Sandbox Code Playgroud)

3. 删除所有 'untagged/dangling' 图像

sudo docker rmi $(docker images -q -f dangling=true)
Run Code Online (Sandbox Code Playgroud)

4. 删除所有图片

sudo docker rmi $(docker images -q)
Run Code Online (Sandbox Code Playgroud)

来源:
https
://www.calazan.com/docker-cleanup-commands/ http://www.linuxquestions.org/questions/ubuntu-63/how-do-i-log-out-via-terminal-928183/

PS 也许其他答案也是正确的,但在这些答案发布的那一刻,我的问题已经解决,我无法检查它们是否正确。感谢@Andreas。他指出了一个错误,即容器已经被移除。由于我没有找到任何正确的“多合一”解决方案,我想告诉您如何解决它。