Docker: load镜像时提示(no space left device)解决方案

Docker: load镜像时提示(no space left device)解决方案

1. 背景

LZ花了几天时间配置了一套sever环境,期间无比痛苦真的,但是基本上配置完一次后一劳永逸,只要把对应的镜像load进服务器,就不用再配置环境了,虽然前期麻烦很多,但是无论换什么机器,LZ基本上可以是一键部署了,不过这也是刚刚学习的一个新技能,所以应用起来并不是很熟练,尤其是遇到使用gpu的一些问题,如驱动之类的问题,解决起来还是比较痛苦的,好啦,生活不就是这样嘛.

那么辛苦配置好的docker环境, lz使用save将其保存下来

docker save ID > your_image_name.tar

因为image比较大,还是需要挺长时间的

然后上传到服务器上使用

docker load < your_image_name.tar

满心欢喜以为可以创建一个容器,结果发现

no space left device

2. 解决方案

出现此问题一般是docker 根目录空间不足导致。可修改其 Docker Root Dir 的值,使其指向一个更大空间的目录即可,LZ通过

df -h

发现系统盘确实被用完了,但是home路径下还有空间,于是进行了如下操作

1. 查看docker 的根目录:

docker info 

显示信息中有docker根目录的位置信息, Docker Root Dir: /var/lib/docker/

2. 查看目录所剩余空间

df  -hl   /var/lib/docker/

我把它改到/home/docker/lib/docker目录下

3. 创建目标目录

mkdir -p /etc/systemd/system/docker.service.d/

4. 创建配置文件

vi /etc/systemd/system/docker.service.d/devicemapper.conf

5. 录入配置信息

[Service]
ExecStart=
ExecStart=/usr/bin/dockerd  --graph=/home/docker/lib/docker

6. 更新docker

systemctl daemon-reload

systemctl restart docker

systemctl enable docker

7. 注意点

由于更换了docker 目录,以前下载的镜像需要转移到新目录下,建议直接删除原来的镜像,重新下载。所以这个建议在刚开始下载docker的时候就进行修改,避免后续的问题

参考地址

  1. https://www.jianshu.com/p/8408e06b7273
  2. https://www.cnblogs.com/lostvip/p/9909689.html
### Windows Docker Desktop 加载 MySQL 镜像磁盘空间不足解决方案 #### 一、检查并清理现有资源 对于“no space left on device”的错误提示,在Docker中启动容器失败可能是因为宿主机上的可用存储空间不足以创建新的AUFS挂载点[^2]。因此,应当先确认当前系统的剩余容量情况。 可以通过命令`docker system df`来查看各个卷、镜像和容器占用的空间大小;利用`docker images ls`列出所有本地存在的镜像文件以便识别不再使用的项目进行删除操作以释放更多位置给新实例使用。 如果存在大量未被充分利用或者已经停止运作的服务进程,则可以考虑通过执行`docker rm $(docker ps -a -q)`移除这些无用实体从而腾出宝贵的数据区段供后续部署任务调用。 另外,定期清除悬空(dangling)的镜像是保持工作环境整洁的好习惯之一,这可通过下面这条指令完成: ```bash docker rmi $(docker images -f "dangling=true" -q) ``` #### 二、调整默认存储路径或增加分配额度 有即使进行了上述优化措施之后仍然无法满足需求,这就需要思考改变默认保存数据的位置或者是扩大分区本身的尺寸了。 - **更改默认存储目录**:可以在安装前指定不同的根目录作为Docker守护程序的工作区域,比如将其迁移到具有更大容量的驱动器上。具体做法是在服务启动参数里加入类似这样的选项`--data-root="E:\docker-data"`(假设目标盘符为E:)。 - **扩展虚拟硬盘(VHD)**:如果是采用Hyper-V后端引擎的话,那么还可以尝试增大关联于该应用软件包所依赖的基础映像(.vhdx)的实际物理长度。此过程涉及到编辑注册表键值以及手动修改XML描述文档等内容,相对复杂一些但确实可行有效。 #### 三、设置合理的交换机制 适当启用Swap功能有助于缓解因RAM紧张而导致的整体性能下降现象,尤其是在运行大型应用程序期间更是如此。虽然这不是直接针对磁盘满溢状况提出的建议,但在某些情况下却能间接起到辅助作用。 需要注意的是,过度依赖swap可能会带来额外开销进而影响效率表现,所以要谨慎权衡利弊得失后再做决定。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值