迁移Docker存储目录

前言

公司分配了一台虚拟机给我用,我在上面用Docker跑了ELK监控系统,用了几天之后发现,虚拟机的根目录只有40G,而拥有更大空间的目录没怎么使用.目前这台虚拟机里面占空间最大的是docker应用,所以想把Docker的存储目录/var/lib/docker迁移至更大空间的目录.
DockerVersion: 20.10.6
OS:CentOS Linux release 7.9.2009 (Core)

查看磁盘使用情况

在这里插入图片描述
发现/opt目录空间最大,没怎么使用,所以把Docker存储目录迁移到/opt

停止docker服务

[root@webapi4-app-22-151 opt]# systemctl stop docker

新建存储目录

[root@webapi4-app-22-151 opt]# mkdir /opt/lib

迁移数据

[root@webapi4-app-22-151 opt]# cp -rvf /var/lib/docker/ /opt/lib/

编辑配置文件

[root@webapi4-app-22-151 ~]# vi /lib/systemd/system/docker.service

在文件的[Service]模块的ExecStart语句中新增一个参数即可: --graph=/opt/lib/docker
在这里插入图片描述

重启Docker

[root@webapi4-app-22-151 ~]# systemctl daemon-reload
[root@webapi4-app-22-151 ~]# systemctl start docker

查看配置是否生效

[root@webapi4-app-22-151 ~]# docker info
Client:
Context: default
Debug Mode: false
Plugins:
app: Docker App (Docker Inc., v0.9.1-beta3)
buildx: Build with BuildKit (Docker Inc., v0.5.1-docker)
scan: Docker Scan (Docker Inc.)
Server:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 9
Server Version: 20.10.6
Storage Driver: overlay2
Backing Filesystem: xfs
…………………………省略………………………………
ID: 3GIX:OTVX:L4JQ:EAFB:MFSX:GQXP:XYDE:BOEY:YX35:IZ5B:ZNAW:PD64
Docker Root Dir: /opt/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Registry Mirrors:
https://5twf62k1.mirror.aliyuncs.com/
Live Restore Enabled: false

查看镜像列表,确保数据无误
在这里插入图片描述

清除旧目录,释放空间

[root@webapi4-app-22-151 ~]# rm -rf /var/lib/docker/

这条命令很危险,执行时请慎重,目录不要打错字

查看完成迁移后的磁盘使用情况

在这里插入图片描述

后话

长期使用Docker时,应养成良好的理念和操作习惯,防止docker存储目录越来越大,否则迁移目录只能缓解一段时间,治标不治本.
操作习惯例如:

  • 清除虚悬镜像(none,无名字的)和不再使用的镜像
  • 清除无用数据卷.有些镜像定义了默认数据卷(/var/lib/docker/volume),删除容器时并不会删除这些数据卷,占用空间.
  • 清除状态异常的容器
  • 找到目录增大的具体原因,从源头上解决空间变大的问题.例如长期运行的容器里产生大量日志,占用很多空间.
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值