docker重启提示已存在一个容器的问题处理

一、问题:在vmware虚拟机中测试以docker方式安装的prometheus,当重启虚拟机后,再次运行prometheus的执行文件,提示已有名称为prometheus的容器存在。

二、处理过程

1、使用docker container ls看不到容器条目

2、使用docker start prometheus启动容器,再使用docker container ls就可以看到prometheus的容器条目了。

3、上述过程说明prometheus的容器在重启虚拟机的过程中并不会自动卸载,仅仅处于停止状态。

4、为确认上述过程,使用命令docker inspect prometheus查看prometheus容器的配置内容,包括id等,再反复使用docker stop prometheus和docker start prometheus命令,可看到同一个id的容器处于停止或启动状态。

5、由此分析,prometheus的启动命令(docker run -d -p 9090:9090 -v $PWD/prometheus.yml:/etc/prometheus/prometheus.yml -v $PWD/prometheus-data:/prometheus  --name prometheus prom/prometheus),其实质是建立docker容器的命令。若此容器还存在的状态下重启虚拟机,则此容器仍然不会消失,仅处于停止状态,可使用docker start prometheus命令恢复运行。

6、若需要再次使用prometheus的容器建立命令(docker run -d -p 9090:9090 -v $PWD/prometheus.yml:/etc/prometheus/prometheus.yml -v $PWD/prometheus-data:/prometheus  --name prometheus prom/prometheus)而不会与已存在的prometheus冲突的话,需要先停止容器(docker stop prometheus),移除容器(docker rm prometheus)才可。

 

上一篇:Docekr 私有仓库push


下一篇:prometheus监控docker的状态2020-06-17