zoukankan      html  css  js  c++  java
  • Docker小手册

    Docker⼩⼿册

    • Docker 清理

    • Docker错误客户排查

    • Docker服务⽆法启动

    • 容器服务停⽌异常

    • ⽹络异常

    • 服务启动失败

     

    Docker 清理

    杀死所有正在运行的容器

    docker kill $(docker ps -a -q)

    删除所有已经停止的容器

    docker rm $(docker ps -a -q)

    删除所有未打dangling标签的镜像----虚悬镜像(dangling image)

    docker rmi $(docker images -q -f dangling=true)

    删除所有镜像

    docker rmi $(docker images -q)

    删除⽆⽤的数据卷

    docker volume rm $(docker volume ls -qf dangling=true)

    清理容器和镜像

    docker ps -qa | xargs -n 1 docker rm -f 
    docker images -qa | xargs -n 1 docker rmi -f
    上述引⽤如下来源
    https://segmentf ault.com/a/1190000000714347
    https://www.calazan.com/docker-cleanup-commands/
    https://blog.f undebug.com/2018/01/10/how-to-clean-docker-disk/
     

    Docker错误排查

    Docker服务无法启动

    错误:
    shim error: docker-runc not installed on system

    解决⽅法(centos7):

    sudo ln -s /usr/libexec/docker/docker-runc-current /usr/bin/docker-runc

    如果还不行可以参考https://stackoverflow.com/questions/42754779/docker-runc-not-installed-on-system

    容器服务停止异常

    错误:
    ERROR: for xxx Cannot start service xxx:b'Container is marked for removal and cannot be started.'
    ERROR: Encountered errors while bringing up the project.

    出现这种情况是不合理的停⽌容器或者系统负载过⾼,导致docker异常,出现僵死容器或处理⽐较慢,⼀般是因为出现路径被占⽤

    1:先尝试删除僵死容器,如果成功则重新启动服务即可
    docker rm $(docker ps --all -q -f status=dead)
    2:如果出现以下错误,说明该挂载路径被其他进程占⽤导致容器异常
    Error response from daemon:driver "overlay" failed to remove root filesystem for xxxxxxxxxxxxxxxx:remove /home/ad/docker/overiay/xxx/merged:device or resource busy
    查找占⽤该路径的进程,并停⽌,然后重新启动服务,再启动其他进程
    grep docker /proc/*/mountinfo | grep xxx
    3: 如果上述仍⽆法解决,请清理所有容器和镜像,并重启docker甚⾄系统后,重新启动

    异常描述:

    docker一启动就连不上某台机器了,网络不通了

    解决⽅法:

    ⼀般是Docker bridge⽹络⽹段和局域⽹段冲突导致,可以 route 查看
     
    请参考 https://yq.aliyun.com/articles/553530
     
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
  • 相关阅读:
    java数据类型
    如何判断数组
    git 常用命令
    如何配置 ESLint 工作流
    Lambda表达式和函数式接口
    面向对象(多态与内部类)
    面向对象(封装与继承)
    面相对像(基础)
    break;怎么跳出外部循环
    面向对象(类与对象)
  • 原文地址:https://www.cnblogs.com/suixinnan/p/15602661.html
Copyright © 2011-2022 走看看