V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
leonme
V2EX  ›  Docker

目前/var/lib/docker 占用空间多大,如何迁移到其他分区?

  •  
  •   leonme · 2020-08-07 13:03:54 +08:00 · 2632 次点击
    这是一个创建于 1548 天前的主题,其中的信息可能已经有所发展或是发生改变。
    按照这个帖子,建立软连接,但是启动后,docker images,发现已有镜像消失
    https://note.wuze.me/modify-docker-default-storage-path


    linux 系统:CentOS Linux release 7.6.1810 (Core)

    docker version:
    Version: 1.13.1
    API version: 1.26
    Package version: docker-1.13.1-162.git64e9980.el7.centos.x86_64


    正确的实践应该是什么呢?
    12 条回复    2020-12-06 14:54:23 +08:00
    momocraft
        1
    momocraft  
       2020-08-07 13:08:13 +08:00
    docker 的文件系统有不少细节,如果你用特定文件系统 简单地 mv 可能不够。符号链接也不够稳。

    如果能重建不如重建
    CodeCodeStudy
        2
    CodeCodeStudy  
       2020-08-07 13:25:55 +08:00
    修改配置文件,默认为 /etc/docker/daemon.json, 参数 --data-root 为存储的根目录。
    参考 https://docs.docker.com/engine/reference/commandline/dockerd/
    leonme
        3
    leonme  
    OP
       2020-08-07 14:22:56 +08:00
    @CodeCodeStudy 请问一下,修改好之后,已有的 image 也能自动移过去吗?
    leonme
        4
    leonme  
    OP
       2020-08-07 14:24:10 +08:00
    @momocraft 比较好奇单纯的设置软链为啥不行~~网上也没找到靠谱的解答,似乎他们都 ok 的
    CodeCodeStudy
        5
    CodeCodeStudy  
       2020-08-07 14:31:25 +08:00
    @leonme 要自己手动复制过去
    leonme
        6
    leonme  
    OP
       2020-08-07 17:54:18 +08:00
    @CodeCodeStudy 好的,我尝试一下~~
    maxbon
        7
    maxbon  
       2020-08-15 17:53:47 +08:00
    停 docker,mv 目录,加软链接,起 docker
    我生产环境就是这么搞的,稳定跑了几年
    leonme
        8
    leonme  
    OP
       2020-08-15 23:20:34 +08:00 via iPhone
    @maxbon 试了无效啊
    better0332
        9
    better0332  
       2020-08-28 19:29:33 +08:00
    @maxbon 软连接最简单,有效的
    leonme
        10
    leonme  
    OP
       2020-08-28 19:46:34 +08:00
    @better0332 在上述环境下试验无效,2333,也不知道为啥
    qq296015668
        11
    qq296015668  
       2020-12-06 14:50:46 +08:00   ❤️ 1
    软连接不行,如果是比较新版本, 1.18 1.19 之类的
    假设你要迁移的地址是 /data
    停止 docker 后,mv /var/lib/docker /data
    vi /etc/docker/daemon.json
    {
    "graph": "/data/docker"
    }
    重启 docker 即可
    qq296015668
        12
    qq296015668  
       2020-12-06 14:54:23 +08:00
    新版本用 --data-root 取代了 --graph
    vi /etc/docker/daemon.json
    {
    "data-root": "/data/docker"
    }

    测试 "graph": "/data/docker" 也没有问题,但是推荐使用 "data-root": "/data/docker"
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2720 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 185ms · UTC 08:36 · PVG 16:36 · LAX 01:36 · JFK 04:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.