一、问题:在测试docker安装的prometheus系统时,由于异常操作,使用docker image ls出现了两条一模一样的条目,如下:

[root@ELK prometheus]# docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
prom/prometheus     latest              de242295e225        10 days ago         140MBprom/prometheus latest de242295e225 10 days ago 140MB

可以看到,两个条目一模一样,不仅名称相同,id相同,而且tag也相同。因此无法使用带tag删除的方法。

 

二、处理办法

1、使用docker rmi de242295e225命令和docker rmi -f de242295e225命令都无法删除。

考虑直接删除image的存储标识。

2、进入image所在目录并查看image:

[root@ELK sha256]# cd /var/lib/docker/image/overlay2/imagedb/content/sha256
[root@ELK sha256]# ll


总用量 8

-rw-------. 1 root root 6667 5月  18 08:13 de242295e2257c37c8cadfd962369228f8f10b2d48a44259b65fef44ad4f6490

3、删除image

[root@ELK sha256]# rm -rf de242295e2257c37c8cadfd962369228f8f10b2d48a44259b65fef44ad4f6490

4、重启docker

[root@ELK sha256]# systemctl restart docker.service

5、重新pull所需要的prometheus镜像image

[root@ELK prometheus]# docker pull prom/prometheus

6、重新运行prometheus:

[root@ELK prometheus]# docker run -d -p 9090:9090 -v $PWD/prometheus.yml:/etc/prometheus/prometheus.yml -v $PWD/prometheus-data:/prometheus  --name prometheus prom/prometheus