介绍

  • 我们在生产环境中安装Docker时,在Linux系统上默认的安装目录是/var/lib/docker,而通常情况下,规划给系统盘的目录一般为50G,该目录是比较小的,一旦容器过多或容器日志过多,就可能出现Docker无法运行的情况,所以我们进行Docker目录迁移。

迁移教程

Ubuntu系统

  1. 打开系统的SSH功能,并使用终端软件进行连接。

  2. 创建一个用于替代docker默认路径的文件夹,位置可以自己更改。

    #演示在根目录创建data文件夹和子文件夹docker
    
    mkdir -p /data/docker
  3. 停止docker服务

    systemctl stop docker
  4. 在同位置创建备份目录,防止迁移失败。

    #将/var/lib/docker复制一份保存为/var/lib/docker-bak
    #复制需要时间,耐心等待完成。
    
    cp -ar /var/lib/docker /var/lib/docker-bak
    
    
    #使用cp -ar而不是cp -r是因为看到有人说建议使用cp -ar迁移目录,不然容器启动会有权限问题。比如只用cp -r迁移会造成mysql容器因为目录权限问题无法重启。
  5. /var/lib/docker目录迁移到新目录/data/docker

    mv /var/lib/docker /data/docker
  6. 创建软连接

    #将新的docker目录创建软链接到默认的docker目录
    
    ln -s /data/docker/ /var/lib/docker
  7. 启动docker

    systemctl start docker
  8. 查看已运行的docker容器

    docker ps
  9. 查看docker目录的软链接情况。

    ls -l /var/lib
  10. 可以看到如下图所示

  11. 自行检查各个容器无误后,删除备份的docker目录。

    rm -rf /var/lib/docker-bak

网络资料参考地址

  • 网络教程参考地址:https://mp.weixin.qq.com/s/omghND4pV4KpxbaLIiAG4g

功德+1(狗子).gif

👇👇👇