Linux修改docker默认存储目录(/var/lib)

Linux修改docker默认存储目录(/var/lib)

1.使用ssh脚本方式

bash 复制代码
#!/bin/bash

# 设置新目录路径
NEW_DATA_ROOT="/new/path/to/docker"

# 停止Docker服务
echo "Stopping Docker service..."
sudo systemctl stop docker

# 备份现有数据
echo "Backing up existing Docker data..."
sudo cp -rp /var/lib/docker /var/lib/docker-old

# 创建新的存储目录
echo "Creating new storage directory..."
sudo mkdir -p "$NEW_DATA_ROOT"

# 编辑Docker守护进程配置文件
echo "Configuring new data root in daemon.json..."
sudo tee /etc/docker/daemon.json <<EOF
{
"data-root": "$NEW_DATA_ROOT"
}
EOF

# 重新启动Docker服务
echo "Restarting Docker service..."
sudo systemctl start docker

# 验证更改
echo "Verifying changes..."
docker info |grep Dir

echo "Docker data root has been successfully changed to $NEW_DATA_ROOT."

2.命令方式

 1.停止docker

  sudo systemctl stop docker

 2.迁移docker安装目录进行备份

  mv docker/ /datadrive/software/

 3.创建文件夹:

  mkdir -p /datadrive/software/docker-config/docker

 4.新增daemon.json文件

bash 复制代码
sudo tee /etc/docker/daemon.json <<EOF
{
"data-root": "/datadrive/software/docker-config/docker"
}
EOF

 5.启动docker

  sudo systemctl start docker

 6.查看docker文件的存放路径

  docker info |grep Dir

相关推荐
赵民勇20 分钟前
systemd-sysusers命令详解
linux·运维
灿烂的贝壳21 分钟前
FC SAN多路径负载均衡配置指南
linux
binqian28 分钟前
【Linux】内核怎么管理侦听socket
linux·网络协议
j7~34 分钟前
【Linux网络】三十七.TCP 协议通讯流程
linux·网络编程·三次握手·四次挥手·tcp 协议通讯流程
普通人638 分钟前
win系统docker运行
windows·docker
顶点多余1 小时前
9.15 面试问题总结(一面挂)
linux·面试·职场和发展
秦jh_1 小时前
【Docker】容器
运维·docker·容器
顺风尿一寸1 小时前
从 ls -U 到 Tomcat libs加载jar包:ext4 目录哈希序如何影响 Java 文件排序顺序
linux·jvm
三8441 小时前
云安全 · 02 · 容器与 Docker 安全基础
web安全·docker·云安全
qeen871 小时前
【Linux】操作系统之进程介绍(一)
linux·笔记·学习·进程