8人参与 • 2025-04-24 • 云虚拟主机
在容器化应用的部署中,docker 通常将数据存储在默认的 /var/lib/docker 目录。然而,随着容器数量的增加和镜像的累积,该目录可能会迅速占满系统磁盘空间,从而影响系统的正常运行。为了避免磁盘空间不足的问题,可以通过将 docker 数据目录迁移到容量更大的磁盘上来解决。本指南将详细说明如何将 docker 数据从默认位置迁移到新磁盘(例如 /dev/sdb1)。
注意:如果磁盘尚未格式化,请先对其进行格式化操作。例如,使用以下命令格式化为 ext4
文件系统:
sudo mkfs.ext4 /dev/sdb1
请根据实际需求选择适合的文件系统类型(如 xfs
或其他)。
sudo mkdir /mnt/temp
sudo mount /dev/sdb1 /mnt/temp
df -h
/dev/sdb1
显示在输出中并正确挂载到 /mnt/temp
。为了避免迁移过程中出现数据损坏,先停止 docker 服务:
sudo systemctl stop docker
使用 cp
命令将当前 /var/lib/docker
数据复制到挂载的磁盘中:
sudo cp -r -p /var/lib/docker/ /mnt/temp/
-r
:递归复制目录及其内容。-p
:保留文件的权限、时间戳等属性。等待复制完成,根据数据量大小,可能需要一些时间。
取消临时挂载:
sudo umount /mnt/temp
将磁盘挂载到目标目录:
sudo mount /dev/sdb1 /var/lib/docker
为确保磁盘在系统重启后仍然自动挂载,编辑 /etc/fstab
文件,添加以下内容:
/dev/sdb1 /var/lib/docker ext4 defaults 0 0
注意:请根据磁盘的实际文件系统类型(如 ext4
、xfs
)调整上述配置。
挂载完成后,重新启动 docker 服务:
sudo systemctl start docker
确认 docker 服务是否正常启动:
sudo systemctl status docker
如果状态显示为 active (running)
,则说明服务正常运行。
检查 docker 的数据目录是否已迁移到新磁盘:
df -h | grep /var/lib/docker
确认 /var/lib/docker
显示为挂载在 /dev/sdb1
的文件系统上。
测试容器运行情况:
运行一个测试容器以确保功能正常:
docker run --rm hello-world
如果输出显示 “hello from docker!”,说明迁移成功且 docker 正常运行。
通过以上步骤,成功将 docker 数据从默认目录迁移到新的磁盘 /dev/sdb1
,为后续的容器运行提供了更大的存储空间。
到此这篇关于将docker数据迁移到新磁盘的操作指南的文章就介绍到这了,更多相关docker数据迁移内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论