解决Docker拉取(pull)镜像时提示空间不足
本文解决依靠原因
一般是由于 docker 根目录空间不足导致的。
下文目前会导致转移目录前安装的容器启动失败 // todo 解决方法:软链接
解决方法
-
查看目前docker存储路径
docker info | grep -i "docker root dir" -
查看目录剩余空间 注意:假设
/var/lib/docker
为步骤1查询得出的结果,后文会使用;df -hl /var/lib/docker -
查看哪里的空间比较大
df -h -
修改Docker配置文件
- 关闭所有运行的docker容器;
docker ps | awk '{print $1}' |xargs docker stop - 停止docker服务;
systemctl stop docker - 在新新增的磁盘挂载点上新建目录,并将原有的docker容器和镜像全部拷贝过来,比如这里新增磁盘的挂载点为 /data/,则参照如下命令操作
mkdir -p /data/var/lib/docker/ cd /data/docker/ cp -r /var/lib/docker/* /data/docker/ - 设置docker的配置文件,并指定存储路径,如果文件不存在则直接创建一个,添加如下内容
vi /etc/docker/daemon.json { "data-root": "/data/docker", "registry-mirrors": ["https://ooe7wn09.mirror.aliyuncs.com"] }
- 关闭所有运行的docker容器;
-
保存/重启docker服务
systemctl daemon-reload systemctl restart docker -
重启后查看是否修改成功
docker info | grep -i "docker root dir" -
再重启一次
systemctl daemon-reload systemctl start docker -
确认镜像/容器是否还在
docker images docker ps -a
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通