根据本文,要删除所有图像,请使用命令
sudo docker rmi $(docker images -a -q)
必须执行。 AFAIK 它在 Windows 中不起作用,但我主要需要 CLI 用于 VPS。目前,我的 VPS 中有 Ubuntu 22.04。如果执行上面的命令,会报错
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Head "http://%2Fvar%2Frun%2Fdocker.sock/_ping": dial unix /var/run/docker.sock: connect: permission denied
"docker rmi" requires at least 1 argument.
See 'docker rmi --help'.
Usage: docker rmi [OPTIONS] IMAGE [IMAGE...]
Remove one or more images
将会发生。删除所有容器时出现类似错误:
sudo docker rm $(docker ps -a -f status=exited -q)
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.44/containers/json?all=1&filters=%7B%22status%22%3A%7B%22exited%22%3Atrue%7D%7D": dial unix /var/run/docker.sock: connect: permission denied
"docker rm" requires at least 1 argument.
See 'docker rm --help'.
Usage: docker rm [OPTIONS] CONTAINER [CONTAINER...]
Remove one or more containers
Docker 版本:
Client: Docker Engine - Community
Version: 25.0.4
API version: 1.44
Go version: go1.21.8
Git commit: 1a576c5
Built: Wed Mar 6 16:32:12 2024
OS/Arch: linux/amd64
Context: default
您需要在嵌套的
sudo
命令前面添加 docker
。
而不是
sudo docker rmi $(docker images -a -q)
你需要
sudo docker rmi $(sudo docker images -a -q)
如果您经常使用 Docker,请考虑将自己添加到
docker
组。然后运行docker
命令就可以了,不用每次都在前面加上sudo
。更多信息在这里:https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user