docker修改并迁移存储至数据盘

文章目录

  • 前言
  • 一、操作步骤(需要root权限)
    • [1. 查看磁盘占用,查看当前docker目录占用的空间](#1. 查看磁盘占用,查看当前docker目录占用的空间)
    • [2. 查看正在运行的容器,并停止容器及服务](#2. 查看正在运行的容器,并停止容器及服务)
    • [3. 拷贝数据、修改配置(关键步骤)](#3. 拷贝数据、修改配置(关键步骤))
    • [4. 加载配置,启动服务及容器](#4. 加载配置,启动服务及容器)
  • 二、注意事项

前言

在Linux下,docker默认的存储目录为/var/lib/docker,可能导致系统盘空间爆满,需要修改docker的存储路径。


一、操作步骤(需要root权限)

1. 查看磁盘占用,查看当前docker目录占用的空间

① 磁盘占用命检查系统盘空间

bash 复制代码
[root@ISMP ~]# df -h

② 检查docker占用的空间

bash 复制代码
[root@ISMP ~]# cd /var/lib/docker
[root@ISMP ~]# du -h --max-depth=1

2. 查看正在运行的容器,并停止容器及服务

bash 复制代码
[root@ISMP ~]# docker ps -a
[root@ISMP ~]# docker stop xxx xxx xxx
[root@ISMP ~]# systemctl stop docker

3. 拷贝数据、修改配置(关键步骤)

① 拷贝数据,这里我把数据拷贝到数据盘的目录里面了

bash 复制代码
[root@ISMP ~]#  cp -ar /var/lib/docker /myData

② 修改daemon.json配置。新增graph行,

bash 复制代码
[root@ISMP ~]#  vim /etc/docker/daemon.json
{
  "registry-mirrors": ["https://qdx396bo.mirror.aliyuncs.com"],
  "graph":"/myData/docker"
}

4. 加载配置,启动服务及容器

docker info 可以用来检查配置是否生效,

bash 复制代码
[root@ISMP ~]#  systemctl daemon-reload
[root@ISMP ~]#  systemctl restart docker
[root@ISMP ~]#  docker info | grep Root
Docker Root Dir: /myData/docker
[root@ISMP ~]#  docker start xxx xxx xxx
[root@ISMP ~]#  docker ps -a # 检查业务

二、注意事项

  1. 拷贝数据时,一定要拷贝权限关系,直接cp -r可能导致部分容器无法启动,显示权限不足等。
bash 复制代码
[root@ISMP ~]#  cp -ar  /var/lib/docker /target/path
相关推荐
翔云1234564 分钟前
Kubernetes 与 Docker Compose:异同详解
docker
RisunJan7 分钟前
Linux命令-nohup(使进程忽略挂起(HUP)信号并在后台继续运行)
linux·运维·服务器
IT策士18 分钟前
第31篇 k8s之Ingress 进阶:TLS、重写与认证
云原生·容器·kubernetes
STDD25 分钟前
VictoriaLogs:轻量级日志存储方案,Loki 的高效替代
运维·jenkins
川石课堂软件测试29 分钟前
作为一名测试工程师如何学习Kubernetes(k8s)技能
学习·测试工具·容器·职场和发展·kubernetes·测试用例·harmonyos
枳实-叶33 分钟前
【Linux驱动开发】第18天:I2C驱动深度解析
linux·运维·驱动开发
shandianchengzi37 分钟前
【记录】Ubuntu|Ubuntu 26.04 笔记本耗电过快,排查 省电过程
linux·运维·ubuntu
一叶星殇40 分钟前
日志成海,何以检索:Serilog 解锁 .NET 日志可查询新范式
运维·服务器
企服AI产品测评局41 分钟前
AI Agent实测:Agent Store现成应用如何重塑企业自动化?
运维·人工智能·ai·chatgpt·自动化
Irene199141 分钟前
(AI总结版)Docker + HBase 安装全过程总结(WSL2 + Win11)
docker·hbase