docker 文件目录迁移

文章参考

du -hs /var/lib/docker/ 命令查看磁盘使用情况。

复制代码
du -hs /var/lib/docker/

docker system df命令,类似于Linux上的df命令,用于查看Docker的磁盘使用情况:

复制代码
root@nn0:~$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 7 2 122.2GB 79.07GB (64%)
Containers 2 2 61.96GB 0B (0%)
Local Volumes 0 0 0B 0B
Build Cache 0 0 0B 0B

迁移 /var/lib/docker 目录

  1. 停止docker服务。

    systemctl stop docker

    systemctl stop docker.socket

  2. 创建新的docker目录,执行命令df -h,找一个大的磁盘。 我在 /home目录下面建了 /home/docker/lib目录,执行的命令是:

    mkdir -p /home/docker/lib

  3. 迁移/var/lib/docker目录下面的文件到 /home/docker/lib:

    rsync -avz /var/lib/docker /home/docker/lib/

  4. 修改 vim /usr/lib/systemd/system/docker.service 搜索 ExecStart

    ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock 添加 --data-root=/home/docker/lib/docker

  5. 修改 /etc/docker/daemon.json

    {
    "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://dockerhub.icu",
    "https://docker.anyhub.us.kg",
    "https://docker.1panel.live"
    ],
    "log-driver":"json-file",
    "log-opts":{
    "max-size" :"50m","max-file":"3"
    },
    "graph":"/home/docker/lib/docker" # docker 低版本使用 graph
    "root-data":"/home/docker/lib/docker" # docker 高版本使用 root-data
    }

  6. 重新加载 docker

    systemctl daemon-reload

    systemctl restart docker

    systemctl enable docker

如果启动失败 输入 systemctl status docker.service 查看错误日志

  1. 为了确认一切顺利,运行

    docker info

命令检查Docker 的根目录.它将被更改为 /home/docker/lib/docker

复制代码
...
Docker Root Dir: /home/docker/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
...
  1. 确定容器没问题后删除/var/lib/docker/目录中的文件。
相关推荐
感哥8 分钟前
Docker镜像
docker
Dontla12 分钟前
Dockerfile解析器指令(Parser Directive)指定语法版本,如:# syntax=docker/dockerfile:1
java·docker·eureka
楠神说软件测试2 小时前
Docker命令(全)
docker
LuiChun2 小时前
docker desktop更新到【4.45.0 】后,旧容器镜像都丢失了
docker·容器·dubbo
子兮曰3 小时前
🔥C盘告急!WSL磁盘暴增?三招秒清20GB+空间
前端·windows·docker
ZLRRLZ3 小时前
【Docker】Docker安装
运维·docker·容器
Dxy12393102165 小时前
Docker常用命令详解
docker·容器·eureka
清寒敲代码5 小时前
k8s核心技术-Helm
运维·容器·kubernetes
魏 无羡5 小时前
k8s 获取真实ip地址
tcp/ip·容器·kubernetes
人工智能训练师5 小时前
在Ubuntu中如何使用PM2来运行一个编译好的Vue项目
linux·运维·服务器·vue.js·ubuntu·容器