使用docker的常见bug

BUG1:磁盘被占满导致docker无法使用

  • docker ps 【查看docker能否正常使用】

正常的话会打印下图信息:

 不正常的话打印如下图信息: 

  • journalctl -u docker 【查看docker无法正常使用的原因】,本次测试中遇到下图bug,意思是/var/lib/docker被占满,无法新建/var/lib/docker/tmp,所以导致docker无法使用。
  •  df -h【查看磁盘使用情况】发现/var/lib/docke确实被占满使用docker的常见bug_第1张图片

解决方案:根据下图命令执行即可

使用docker的常见bug_第2张图片

BUG2:镜像不存在报错

启动docker时报如下错误

bug原因:镜像不存在导致无法使用该镜像的容器

  • docker images【查看镜像是否存在】本次测试中发现镜像确实不存在

 解决方案:加载镜像

BUG3:卸载镜像时报错磁盘busy,错误如下图红框所示 

 卸载docker报如下错误

使用docker的常见bug_第3张图片

原因:建立容器的时做了相应目录的挂载没有卸载,所以Device or resource busy

解决方案:查找挂载的目录并卸载,如上图绿框和粉框的命令所示

cat /proc/mounts | grep "docker"

BUG4:本项目的裸机环境在机器重启后可能启动docker失败

原因:docker启动失败,命令systemctl status docker查看docker的启动状态。

使用docker的常见bug_第4张图片

 解决方案:重新加载docker配置文件并重启docker【也可按照下图的方法,将配置文件/etc/docker/daemon.json重命名为daemon.conf然后重新加载配置文件然后重启docker】

 重新加载docker配置文件:systemctl daemon-reload

重启docker:service docker restart

使用docker的常见bug_第5张图片

 参考文章:解决docker报错Job for docker.service failed because start of the service was attempted too often_Aloeox的博客-CSDN博客

BUG5:

bug原因:是因为在使用apt-get安装依赖时,可能会有对话框,制作镜像时如果不选择会导致失败。

使用docker的常见bug_第6张图片

 解决方案:在Dockerfile中增加一句:ENV DEBIAN_FRONTEND noninteractive

 BUG6:

使用docker的常见bug_第7张图片

bug原因:docker的网桥断了 

解决方案:重启docker,命令:service docker restart

BUG7:本项目的裸机环境在机器重启后可能启动docker失败

使用docker的常见bug_第8张图片

 bug原因:缺少依赖包libseccomp

解决方案:安装依赖包并重启机器重启docker

yum install libseccomp

reboot

systemctl start docker 

你可能感兴趣的:(docker,bug,eureka)