在容器化场景下默认存储路径为(/var/lib/docker)大多数平台根目录不支持系统盘扩容,会有空间不足风险隐患,因未配置持久化存储导致容器数据丢失。以迁移Docker存储路径至大容量/data目录说明
一、停止容器
bash
systemctl stop docker docker.socket
二、数据迁移
bash
mkdir -p /data/docker
cp -a /var/lib/docker/* /data/docker/
- 数据量较大可使用:rsync -avzHP /var/lib/docker/ /data/docker/ # 推荐增量同步避免中断
三、修改Docker配置
bash
vim /etc/docker/daemon.json # 新增或修改以下内容
{
"data-root": "/data/docker"
}
- Docker 17.05+版本支持此配置,旧版本需修改docker.service 中的--graph参数
四、重启服务并验证
bash
systemctl daemon-reload
systemctl start docker
#输出结果为 /data
docker info | grep "Docker Root Dir"
Docker Root Dir: /data/docker