Docker扩容操作(docker总是空间不足)

Docker扩容操作(docker总是空间不足)

1、df二连,一共也就70g,总是占满93%以上。所以需要移动到其他目录上

查看docker镜像和容器存储目录的空间大小

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

2、停止docker服务

复制代码
systemctl stop docker

3、首先创建目录并迁移

复制代码
# 首先创建目录
mkdir -p /home/docker_home

4、复制

复制代码
sudo cp -ar /var/lib/docker /home/docker_home/

-a archive

-v verbose view

-z 压缩

-r 递归

5、重新修改映射路径

复制代码
vim  /etc/docker/daemon.json

增加下面的

复制代码
"data-root": "/home/docker_home/docker"

我的示例:

复制代码
{
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://dockerhub.icu"
  ],
  "data-root": "/home/docker_home/docker"
}

df -Th

6、重新启动docker

复制代码
systemctl daemon-reload && systemctl restart docker

7、查看是否正常绑定目录

复制代码
docker info
docker ps

这个是解释

tip:

如果您想在之前的命令中添加 --progress 选项以显示 rsync 操作的进度,您可以这样修改命令:

bash 复制代码
( cd /var/lib/docker && find . -type f -print0 | xargs -0 -P4 -I{} rsync -avz --inplace --progress {} /home/docker/lib/; )

这里的 --progress 选项会使得 rsync 在复制文件时显示每个文件的传输进度。这对于大型文件或大量文件的复制操作特别有用,因为它提供了一个直观的反馈,让用户知道复制操作的进度。

完整的命令解释如下:

  • cd /var/lib/docker:切换到 Docker 的数据目录。
  • find . -type f -print0:查找当前目录及子目录下的所有文件,并以 \0 作为分隔符输出,这样处理文件名时可以正确处理包含空格和特殊字符的文件名。
  • |:管道符,将前一个命令的输出作为后一个命令的输入。
  • xargs -0 -P4 -I{}:xargs 命令读取来自 find 的输入,并为每个文件执行后面的 rsync 命令。-0 表示输入项是以 \0 分隔的,-P4 表示并行执行,使用4个进程,-I{} 定义了一个替换字符串 {},它在每个 rsync 命令中被替换为当前处理的文件名。
  • rsync -avz --inplace --progress {} /home/docker/lib/:对于 xargs 传递过来的每个文件名 {},rsync 命令将该文件从 /var/lib/docker 复制到 /home/docker/lib/,同时保留文件属性、显示详细输出、在传输过程中压缩数据,并直接在目标位置更新文件。--progress 选项显示每个文件的传输进度。

请注意,rsync 的 --progress 选项可能会稍微降低复制速度,因为它需要额外的时间来计算和显示进度信息。但是,对于大型文件或长时间运行的复制任务,这个选项提供的进度反馈是非常有用的。

参考:

https://blog.csdn.net/qq_41973632/article/details/142464963

相关推荐
m0_646429971 分钟前
Docker 完整核心知识点总结(超通俗易懂版)
运维·docker·容器
亚川楼宇自控系统数据中心厂家23 分钟前
IBMS 集成管理系统:如何打通楼宇自控实现建筑一体化管控
运维
迪康Defender29 分钟前
终端安全审批体系设计:如何平衡安全管控与业务连续性
运维·服务器·安全·运维开发·学习方法·业界资讯·远程工作
luo_guibin2 小时前
Linux系统下OpenSSL升级全流程,新旧版本切换
linux·运维·服务器
7177772 小时前
支持混合云的 DevOps 平台有哪些:主流方案对比与选型指南
运维·devops
看着博客敲代码2 小时前
No space left on device:服务器被 SSH 爆破到日志写满的完整排查与止血
linux·运维·服务器·安全·ssh
编程序的员2 小时前
使用OpenTelemetry来监控Rust应用
运维·rust·monitoring·opentelemetry
实战派K8S&DB3 小时前
TDSQL 核心模块与进程体系
运维·数据库·分布式·sql·mysql
Rooting++3 小时前
用友打包的APP壳子怎么获取SHA1码?
运维·服务器
吴声子夜歌3 小时前
Docker入门与实战——实战案例(Web服务与应用)
docker·容器