欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Docker 常见问题

程序员文章站 2022-05-12 17:28:20
...

一、容器异常停止,自动重启

启动时加--restart=always

docker run -tid --name isaler_v0.0.11 -p 8081:8080 --restart=always -v /alidata/iDocker/run/projectImages/isaler/v0.0.11/log:/usr/local/tomcat/logs isaler_v0.0.11


Flag	Description
no		不自动重启容器. (默认value)
on-failure 	容器发生error而退出(容器退出状态不为0)重启容器
unless-stopped 	在容器已经stop掉或Docker stoped/restarted的时候才重启容器
always 	在容器已经stop掉或Docker stoped/restarted的时候才重启容器

如果已经过运行的项目

如果已经启动的项目,则使用update更新:
docker update --restart=always xxx  

二、删除容器报错

执行命令

docker rm mycentos

错误内容

Error response from daemon: You cannot remove a running container eb05f5b3b94bff9b49cd5194fce31d35ef01b8d89812c64410313a5522e33406. Stop the container before attempting removal or force remove

错误原因

因为该容器正在运行,所以无法删除。

解决方案

  1. 应该先把运行的容器停止,然后在执行删除命令

    docker stop mycentos

  2. 强制删除该容器。

    docker rm -f mycentos

三、删除镜像报错

执行命令

docker rmi centos

错误内容

Error response from daemon: conflict: unable to remove repository reference "centos" (must force) - container eb05f5b3b94b is using its referenced image 49f7960eb7e4

错误原因

因为还有基于该镜像启动的容器没有删除

解决方案

  1. 应该使用docker ps -a 检查一下有没有基于该镜像运行的容器,如果有先停止,再删除。

    docker ps -a

    docker stop mycentos

    docker rm mycentos

  2. 强制删除该镜像。

    docker rmi -f centos

四、启动容器报错

执行命令

docker run -tid --name mycentos centos

错误内容

docker: Error response from daemon: Conflict. The container name "/mycentos" is already in use by container "eb05f5b3b94bff9b49cd5194fce31d35ef01b8d89812c64410313a5522e33406". You have to remove (or rename) that container to be able to reuse that name.
See 'docker run --help'

错误原因

因为已经存在一个容器的名字与mycentos一致。

解决方案

  1. 更改其他名称

     docker run -tid --name mycentos1 centos
    

五、容器中不能使用systemctl

解决方案

在容器启动时增加--privileged=true -v /sys/fs/cgroup:/sys/fs/cgroup/usr/sbin/init即可

docker run  -tid --name mycentos1 --privileged=true -v /sys/fs/cgroup:/sys/fs/cgroup centos  /usr/sbin/init

六、容器时间与宿主机不一致

启动容器后,有些项目或者服务,需要使用服务器的时间,发现与宿主机的时间不一致。

解决方案

同步时间
docker cp /etc/localtime 3d5ed3420c2f:/etc/localtime

转载于:https://my.oschina.net/lwenhao/blog/2088016

上一篇: 查找最大元素

下一篇: 连接池之二