Ubuntu20.04修改docker镜像存储位置并进行数据迁移

http://t.csdnimg.cn/t0v74

很多系统在刚开始都把docker安装在系统盘,但是随着镜像越来越多,数据就可能存不下,所以就需要扩充容量,比如加一个磁盘这种。关于Ubuntu20.04如何挂载4T数据盘,可以参考前面发的文章:https://blog.csdn.net/qq_41318914/article/details/123623761

Ubuntu20.04挂载4T数据盘流程_ubuntu20.04用parted-CSDN博客
1.首先,默认情况下docker的镜像和容器都是保存在/var/lib/docker下面,可以进入查看一下:

如果不是root用户查看的话,可能会出现权限不够的问题,可以通过chown更改文件夹权限:

sudo chown -R apr:user /var/lib/docker

 

其中,apr表示用户当前所在的用户组,user表示用户账户名称
可以使用groups user查看用户user所在的用户组
2.使用du命令查看文件夹大小:

sudo du -hd 1

下图的overlay2就是镜像文件大小


 

3.将原来的docker文件夹拷贝到新的地方(比如更大的磁盘上,假设是/data分区)

sudo cp -r /var/lib/docker /data/docker

   

注:这里不需要新建一个/data/docker目录,再进行复制,如果原来就存在、data/docker的话,复制的结果会变成/data/docker/docker
4.然后修改docker中默认镜像和容器的保存位置。

sudo vim /etc/docker/daemon.json

   

5.将里面的data-root改为新的docker容器存储位置

"data-root": "/data/docker",

   


然后重启docker服务,就可以更新docker默认的镜像容器保存位置,特别注意,如果新的保存位置里拷贝了原来容器保存位置里的所有内容,那么镜像数据等也就迁移过来了。

sudo systemctl stop docker
sudo systemctl start docker
sudo systemctl status docker

  

个人认为,docker主要是做了文件系统的隔离,所以每个镜像和容器实际上都是依赖块隔离的硬盘空间(在里面部署一个隔离的文件系统),所以可以通过直接拷贝的方式进行迁移,而不需要担心有什么依赖关系无法通过拷贝带过去。

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值