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
相关推荐
程序猿不脱发222 分钟前
聊聊负载均衡架构
运维·架构·负载均衡
Danileaf_Guo25 分钟前
华为交换机S3700/S5700/CE6800配置SSH远程登录
运维·华为·ssh
2401_858286111 小时前
OS26.【Linux】进程程序替换(下)
linux·运维·服务器·开发语言·算法·exec·进程
令狐少侠20112 小时前
如何使用navicat连接容器中的mysql数据库
mysql·docker
wanhengidc2 小时前
云手机挂机掉线是由哪些因素造成的?
运维·服务器·网络·安全·智能手机
linyb极客之路2 小时前
搞不定 Docker 部署 SeaTunnel?这些坑与解法你得知道!
docker
Monly212 小时前
Docker:常用命令、以及设置别名
docker·容器·eureka
刃神太酷啦3 小时前
Linux 常用指令全解析:从基础操作到系统管理(1w字精简版)----《Hello Linux!》(2)
linux·运维·服务器·c语言·c++·算法·leetcode
小妖6663 小时前
centos 用 docker 方式安装 dufs
linux·docker·centos
qq_433888933 小时前
win11中系统的WSL安装Centos以及必要组件
linux·运维·centos