DOCKER 存储目录更换

参考文章:DOCKER 存储目录更换

开发环境中, Docker测试服务器运行的容器,镜像太多了, 导致之前配置的100G磁盘空间经常性占满,决定把docker的存储目录更换到新的挂载点中.以作记录.

1. 查看Docker 磁盘使用情况

docker system df

2. 清理磁盘(非必须)

docker system prune
  • 删除关闭的容器
  • 无用的数据卷和网络
  • 无TAG的镜像
  • -a 参数 无用的镜像也会删除 (慎用)

3. 停止Docker 服务

systemctl stop docker

4. 迁移数据目录

# 迁移/var/lib/docker目录下面的文件到 /data/docker/lib
mkdir -p /data/docker/lib/
rsync -avz /var/lib/docker/ /data/docker/lib/
  • /var/lib/docker : docker默认数据目录
  • /data/docker/lib: 目标目录, 执行前需要先创建

#注意:rsync 在指定复制源时,路径是否有最后的 “/” 有不同的含义,例如:
    /home : 表示将整个 /home 目录复制到目标目录
    /home/ : 表示将 /home 目录中的所有内容复制到目标目录

5. 配置mapper文件

根据docker服务的安装配置文件进行修改

vi /usr/lib/systemd/system/docker.service

ExectStart=xxx 中添加属性"--graph /data/docker/lib"

ExecStart=/usr/bin/dockerd --graph /data/docker/lib

 重新更新一下docker服务

systemctl disable docker
systemctl enable docker
systemctl daemon-reload
systemctl start docker

6. 检查

docker info

可以看到以下信息表示成功
Docker Root Dir: /data/docker/lib/docker

...
Docker Root Dir: /data/docker/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
...

执行docker images可以看到之前所有的镜像也全部同步了过来.

linlf@dacent:~$ docker images
REPOSITORY           TAG                 IMAGE ID            CREATED             SIZE
AAA/AAA               v2                  7331b8651bcc        27 hours ago        3.85GB
BBB/BBB               v1                  da4a80dd8424        28 hours ago        3.47GB

确定容器没问题后删除/var/lib/docker/目录中的文件。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值