我正在尝试删除 docker/image/container 以及所有以某种方式与 docker 连接的东西,但首先我需要停止它。当我尝试执行此命令时:
docker stop $(docker ps -a -q)
它给了我一个错误:
[:/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.
如何卸载 Docker 容器?
答案1
我已经修好了!请不要忘记——容器中的所有数据都将被删除!
因此,首先我们需要执行以下命令:
# 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
然后我们需要注销,不使用 GUI 变体,因为它对我来说不起作用并且我对此感到失望。
相反,使用这个命令:
sudo pkill -u username
那我们需要...
1. 终止所有正在运行的容器
sudo docker kill $(docker ps -q)
2.删除所有已停止的容器
sudo docker rm $(docker ps -a -q)
3. 删除所有“未标记/悬空”图像
sudo docker rmi $(docker images -q -f dangling=true)
4. 删除所有图像
sudo docker rmi $(docker images -q)
资料来源:
https://www.calazan.com/docker-cleanup-commands/
http://www.linuxquestions.org/questions/ubuntu-63/how-do-i-log-out-via-terminal-928183/
PS 也许其他答案也正确,但在这些答案发布时,我的问题已经解决,我无法检查它们是否正确。感谢@Andreas。他指出了一个错误,容器已被移除。由于我没有找到任何正确且“一体化”的解决方案,我想告诉你如何修复它。
答案2
您需要以 的方式执行这些命令root
,即使用sudo
:
sudo docker stop $(sudo docker ps -a -q)
或者:
sudo sh -c "docker stop $(docker ps -a -q)"