美文网首页
Ubuntu22下使用docker ps 找不到正在运行的容器

Ubuntu22下使用docker ps 找不到正在运行的容器

作者: aq_wzj | 来源:发表于2023-05-16 11:47 被阅读0次

    0. 解决办法

    卸载有风险, 请提前做好快照或备份

    若容器是 apt 的启动的, 则卸载 snapdocker

    snap remove docker

    若容器是 snap 的启动的, 则卸载 aptdocker

    apt autoremove docker

    卸载完后重启服务器

    reboot

    两种判断方法:

    1. 查看当前的 docker 命令是 apt 的还是 snap 的, apt 的是看不到 snap 的容器的, 反之一样
    2. 检查容器相关的文件的路径, 如数据卷位置, 或者全局搜索容器名称, 若是在 /var/lib/docker/ 下则是 apt, 若在 /var/snap/docker/ 下则是 snap

    1. 背景:

    使用 apt 下载了 docker 且启动了一个 gitlab 容器, 当时是可以找到这个容器的. 后面过了一段时间之后找不到这个容器了, 但是这个容器的服务确实还在运行, 使用 ps 命令还是能找到的

    2. 原因分析:

    镜像自带了一个使用 snap 安装的 docker , 再次使用 apt 下载了 docker , 默认的 docker 命令变为 apt 下载的, 此时, 运行与查看镜像都没有问题

    后来服务器重启过之后, docker 命令变为 snap 下载的了, 这时使用 docker ps 无法找到 aptdocker 启动的镜像

    2.1 检查有几个 docker

    使用 snap list 命令查看是否有 docker

    202305171143486.png

    使用 apt list --installed | grep 'docker' 命令 查看是否有 docker

    202305171143745.png

    由此可以判断已经安装了两个 docker , 所以存在着冲突

    2.2 查看当前的 docker 命令是 apt 的还是 snap

    使用命令 docker info |grep "Docker Root Dir" 查看

    若输出为 Docker Root Dir: /var/snap/docker/common/var-lib-docker 则是 snap

    202305171143225.png

    若输出为 Docker Root Dir: /var/lib/docker 则是 apt

    202305171143945.png

    相关文章

      网友评论

          本文标题:Ubuntu22下使用docker ps 找不到正在运行的容器

          本文链接:https://www.haomeiwen.com/subject/ecxbsdtx.html