loading

Loading

请输入关键字开始搜索
    首页 技术实践随笔技术

    docker ps显示无容器

    分类:随笔技术
    字数: (1171)
    阅读: (174)
    0

    1. 背景

    在系统ubuntu24.04使用apt下载了docker,并启动了容器。当时是可以docker ps找到容器的,但是重启以后就没有了。但是能看到容器的服务器确实还是在运行的,但是无法使用docker ps找到了。网上查了一下,云因镜像自带了一个使用 snap 安装的 docker , 再次使用 apt 下载了 docker , 默认的 docker 命令变为 apt 下载的, 此时, 运行与查看镜像都没有问题,后来服务器重启过之后, docker 命令变为 snap 下载的了, 这时使用 docker ps 无法找到 aptdocker 启动的镜像。

    2. 排查

    使用snap list查看是否有docker,如下说明有snap的docker。

    mh@mh-MINI-PRO-AHP:~$ snap list | grep docker
    docker                     27.5.1           3064   latest/stable    canonical**  -

    使用 apt list --installed | grep 'docker' 命令 查看是否有 docker,如下则是有:

    mh@mh-MINI-PRO-AHP:~$ docker info |grep "Docker Root Dir"
     Docker Root Dir: /var/snap/docker/common/var-lib-docker

    如果2个都有,则说明安装了2个docker,存在冲突。

    3. 解决方案

    使用命令 docker info |grep "Docker Root Dir"查看,如果是:

    mh@mh-MINI-PRO-AHP:~$ docker info |grep "Docker Root Dir"
     Docker Root Dir: /var/snap/docker/common/var-lib-docker

    则说明当前的dockersnap的,但是实际自启动运行的是apt的,所以无法显示,应该删除snap
    如果是:

    mh@mh-MINI-PRO-AHP:~$ docker info |grep "Docker Root Dir"
     Docker Root Dir: /var/lib/docker

    则说明当前的dockerapt的,但是实际自启动运行的是snap的,所以要卸载apt

    # 卸载apt的
    apt autoremove docker
    # 卸载snap的
    snap remove docker

    卸载完毕后,记得重新加载docker

    # 重新启动docker
    sudo systemctl restart docker
    
    # 重启设备
    reboot
    本文发布于2025年03月15日23:15,已经过了288天,若内容或图片失效,请留言反馈
    文章出处: 求索空间
    文章链接: https://blog.askerlab.com/docker_ps_error
    评论列表:
    empty

    暂无评论