文档首页> IDC服务> 为什么字节大量用GO而不是Java?

为什么字节大量用GO而不是Java?

发布时间:2025-09-03 00:24       

在 CentOS 7 虚拟机 环境中,如果遇到磁盘空间不足,需要进行 硬盘扩容,同时为了优化 Docker 使用,需要 修改默认存储位置。下面我分两部分说明,保证流程严谨、操作可复现。⚙️


一、CentOS7 虚拟机硬盘扩容

1. 虚拟层面扩容

在虚拟化平台(如 VMware、VirtualBox 或 KVM)中,将虚拟磁盘容量调整为更大,例如从 40GB 调整为 80GB。此时系统内核能检测到新大小,但文件系统未扩展。

2. 检查新硬盘空间

lsblk
fdisk -l
​

确认新空间已被系统识别。

3. 扩展分区

如果是 LVM 管理:

# 查看卷组和逻辑卷
vgdisplay
lvdisplay

# 扩展逻辑卷,例如 /dev/centos/root
lvextend -l +100%FREE /dev/centos/root

# 扩展文件系统
xfs_growfs /dev/centos/root
​

如果是 EXT4 文件系统:

resize2fs /dev/mapper/centos-root
​

完成后再用 df -h 检查容量是否扩展成功 ✅。


二、修改 Docker 默认存储位置

Docker 默认将镜像、容器、卷存放在 /var/lib/docker,当系统盘空间不足时,需迁移到扩容后的磁盘或新挂载目录。

1. 停止 Docker 服务

systemctl stop docker
​

2. 准备新存储目录

例如迁移到 /data/docker:

mkdir -p /data/docker
​

3. 同步数据

rsync -avz /var/lib/docker/ /data/docker/
​

4. 修改配置文件

编辑 /etc/docker/daemon.json,若不存在则新建:

{
  "data-root": "/data/docker"
}
​

5. 启动 Docker

systemctl daemon-reload
systemctl start docker
systemctl enable docker
​

6. 验证

docker info | grep "Docker Root Dir"
​

输出应为 /data/docker 🎉。


三、操作流程总结表

步骤 操作 目的
扩容前检查 lsblk/fdisk -l 确认磁盘新增空间
LVM 扩展 lvextend+xfs_growfs 扩展逻辑卷和文件系统
EXT4 扩展 resize2fs 扩展 EXT4 分区
停止 Docker systemctl stop docker 防止迁移时数据冲突
数据迁移 rsync 保留原有镜像和容器
修改配置 daemon.json设置 data-root 切换存储目录
启动验证 docker info 确认新目录生效

四、总结

在 CentOS7 虚拟机上,硬盘扩容通常结合 虚拟层扩容 + LVM 或文件系统扩展来完成。而 Docker 默认目录迁移则依赖 停止服务、同步数据、修改配置三步。两者结合后,不仅能解决磁盘空间不足问题,还能让 Docker 存储更加灵活和高效。🚀


要不要我再给你一份 “Docker 存储迁移到新硬盘挂载点的最佳实践方案”(包含挂载新磁盘、分区、挂载 /data 并绑定到 Docker)?这样比仅在系统盘扩容更专业。