使用ELK和docker,我需要重启每项服务。
docker ps
告诉我,我没有任何容器。
docker run -it --rm [...] --name es elasticsearch
- > Error response from daemon. The name "es" is already use by container [...]
所以我尝试删除所有容器:
docker ps -a -q | xargs docker rm
- > Cannot connect to the Docker daemon. Is the docker daemon running on this host?
容器没有启动但仍然在这里。
当然,我可以简单地更改我的容器名称,但它不对。这意味着我有容器运行。即使我重新启动服务器。
有什么想法吗?
答案 0 :(得分:3)
当您停止使用容器时,默认情况下不会将其删除,除非您提供--rm
标记。所以,它可能是这样,就像你已经开始并停止了一个名为es
名称的容器之前,它现在停止了。但是,即使现有名称未运行,也无法使用现有名称创建新容器。尝试使用-a
标志显示您拥有的所有容器:
docker ps -a
如果您的名称为es
,请手动将其删除:
docker rm es
您还可以提供-f
标记,以强制删除es
容器,即使它正在运行。
答案 1 :(得分:1)
docker rm es应该可以解决这个问题。此外,如果要删除正在运行的容器,可以添加-f参数(docker rm -f'container_name')