更换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
相关推荐
金刚猿1 小时前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
JH_Kong2 小时前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿2 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
70asunflower6 小时前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
春日见7 小时前
车辆动力学:前后轮车轴
java·开发语言·驱动开发·docker·计算机外设
xuhe27 小时前
[全流程详细教程]Docker部署ClawBot, 使用GLM4.7, 接入TG Bot实现私人助理. 解决Docker Openclaw Permission Denied问题
linux·docker·ai·github·tldr
星火s漫天8 小时前
第一篇: 使用Docker部署flask项目(Flask + DB 容器化)
数据库·docker·flask
MonkeyKing_sunyuhua9 小时前
docker compose up -d --build 完全使用新代码打包的方法
docker·容器·eureka
醇氧10 小时前
【docker】mysql 8 的健康检查(Health Check)
mysql·docker·容器
技术路上的探险家10 小时前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker