解决Docker拉取(pull)镜像时提示空间不足

本文解决依靠原因

一般是由于 docker 根目录空间不足导致的。
image

下文目前会导致转移目录前安装的容器启动失败 // todo 解决方法:软链接

解决方法

  1. 查看目前docker存储路径

    docker info | grep -i "docker root dir"
  2. 查看目录剩余空间 注意:假设/var/lib/docker为步骤1查询得出的结果,后文会使用;

    df -hl /var/lib/docker
  3. 查看哪里的空间比较大

    df -h

    image

  4. 修改Docker配置文件

    1. 关闭所有运行的docker容器;
      docker ps | awk '{print $1}' |xargs docker stop
    2. 停止docker服务;
      systemctl stop docker
    3. 在新新增的磁盘挂载点上新建目录,并将原有的docker容器和镜像全部拷贝过来,比如这里新增磁盘的挂载点为 /data/,则参照如下命令操作
      mkdir -p /data/var/lib/docker/
      cd /data/docker/
      cp -r /var/lib/docker/* /data/docker/
    4. 设置docker的配置文件,并指定存储路径,如果文件不存在则直接创建一个,添加如下内容
      vi /etc/docker/daemon.json
      {
      "data-root": "/data/docker",
      "registry-mirrors": ["https://ooe7wn09.mirror.aliyuncs.com"]
      }
  5. 保存/重启docker服务

    systemctl daemon-reload
    systemctl restart docker
  6. 重启后查看是否修改成功

    docker info | grep -i "docker root dir"

    image

  7. 再重启一次

    systemctl daemon-reload
    systemctl start docker
  8. 确认镜像/容器是否还在

    docker images
    docker ps -a
posted @   SeaWaveLin  阅读(1558)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示