更换docker工作目录

使用环境

由于默认系统盘比较小docker镜像很容易就占满,需要挂载新的磁盘修改docker的默认工作目录

环境:centos7

docker默认工作目录: /var/lib/docker/

新的工作目录:/home/docker-data【自己手动创建,一般挂在新加的磁盘下面】

步骤一:停掉docker及其容器

复制代码
如果在docker配置文件中开启了
"live-restore": true
会导致docker服务停止但容器还在持续运行
这种情况下更换docker工作目录会对正在运行的容器服务造成极大影响!!! 
所以更换目录必须停掉所有正在运行的容器
bash 复制代码
docker stop `docker ps ` ## 停止所有正在运行的容器
systemctl stop docker 

步骤二,更换操作目录

bash 复制代码
cp -rf /var/lib/docker /data/docker-data/
或者
mv /var/lib/docker /data/docker-data/

步骤三,在docker的配置文件中添加字段指定新的工作目录

bash 复制代码
[root@mongodb-2 ~]# cat /etc/docker/daemon.json 
{
  "data-root": "/data/docker-data/docker",   ## 新添加字段,指定其新的工作目录路径
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "max-concurrent-downloads": 30,
  "max-concurrent-uploads": 15,
    "registry-mirrors": [ "https://43352a8907ad44bb8fad9057c1d4e38b.mirror.swr.myhuaweicloud.com" ],
  "live-restore": true
}

步骤四,重新加载配置文件及重启docker

bash 复制代码
[root@mongodb-2 ~]# systemctl daemon-reload
[root@mongodb-2 ~]# systemctl restart docker
相关推荐
飞快的蜗牛20 分钟前
利用linux系统自带的cron 定时备份数据库,不需要写代码了
java·docker
香吧香1 小时前
Docker Registry 使用总结
docker
赵渝强老师2 小时前
【赵渝强老师】Docker容器的资源管理机制
linux·docker·容器·kubernetes
haicome3 小时前
deepseek部署
docker·ragflow·deepseek 部署
乄bluefox3 小时前
保姆级docker部署nacos集群
java·docker·容器
每天进步一点_JL4 小时前
Docker 是什么?
后端·docker·容器
一叶飘零_sweeeet4 小时前
从 0 到 1 掌控云原生部署:Java 项目的 Docker 容器化与 K8s 集群实战指南
docker·云原生·kubernetes·项目部署
森林猿5 小时前
docker-compose-kafka 4.1.0
docker·容器·kafka
Gss7776 小时前
Docker 容器核心知识总结
docker·容器
罗技1236 小时前
Docker 启动 Easysearch 时自定义初始密码的几种方式
运维·docker·容器