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
相关推荐
_extraordinary_2 小时前
Linux基本指令(三)+ 权限
linux·运维·服务器
青春:一叶知秋2 小时前
Reactor模型说明
运维·服务器
和舒貌4 小时前
Linux系统编程基础详解
linux·运维·服务器·基础
wssswsss5 小时前
docker容器网络配置及常用操作
网络·docker·容器
蛊明6 小时前
下载CentOS 10
linux·运维·centos
北京-宏哥6 小时前
Linux系统安装MySQL5.7(其他版本类似)避坑指南
linux·运维·服务器
qw9497 小时前
Linux 高级篇 日志管理、定制自己的Linux系统、备份与恢复
linux·运维·服务器
丶只有影子7 小时前
【Nacos】从零开始启动Nacos服务(windows/linux)
linux·运维·windows·微服务·springcloud
青年vs阳光7 小时前
win10把c盘docker虚拟硬盘映射迁移到别的磁盘
运维·docker·容器
-SGlow-7 小时前
Linux相关概念和易错知识点(30)(线程互斥、线程同步)
linux·运维·服务器