千家信息网

怎么给容器服务的Docker增加数据盘

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍了怎么给容器服务的Docker增加数据盘,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Docker 的数据是通过联合文
千家信息网最后更新 2026年11月03日怎么给容器服务的Docker增加数据盘

这篇文章主要介绍了怎么给容器服务的Docker增加数据盘,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

Docker 的数据是通过联合文件系统的方式存储到磁盘上,当需要在机器上运行的容器或者镜像的数量不断增加时,有可能磁盘的大小不再满足需求,这个时候就需要通过增加数据盘的方式,给 Docker的数据目录可存储的空间进行扩容。

Docker 数据目录

Docker默认的容器和镜像数据存储的目录是在 /var/lib/docker 下,可以通过 du 命令查看这个目录目前占用的磁盘的大小,例如:

du -h --max-depth=0 /var/lib/docker7.9G    /var/lib/docker

更换Docker的数据盘

因为很多 Docker 的镜像很大,所以可能几个镜像就占用很大的磁盘空间,从而导致磁盘空间不足,通过为 Docker 的数据目录增加数据盘的方式,可以满足继续增加镜像或容器的需求。

购买ECS数据盘,并挂载到需要扩容的机器上

  1. 登录 云服务器 ECS 控制台,购买相应配置的云盘。

  2. 单击 ECS实例详情页 > 本实例磁盘 > 挂载磁盘,选择刚才购买的磁盘,并记录挂载点 /dev/xvd* 或者 /dev/vd*。根据 cd 命令确定挂载点,IO 优化实例的挂载点是 /dev/vd*。

登录到机器上,对刚才挂载的磁盘进行格式化

  1. 首先在机器上执行 ls -l /dev/xvd* 或者 ls -l /dev/vd* 看到和刚才记录的一致的磁盘ID。

  2. 通过 fdisk 命令对磁盘进行分区,然后使用 mkfs.ext4 格式化磁盘,具体请参见 Linux 格式化和挂载数据盘,例如:

    root@iZbp16h2ijt5er5wempg4sZ:~# ls -l /dev/vd* brw-rw---- 1 root disk 253,  0 Jan  5 17:44 /dev/vda brw-rw---- 1 root disk 253,  1 Jan  5 17:44 /dev/vda1 brw-rw---- 1 root disk 253, 16 Jan  5 17:55 /dev/vdb root@iZbp16h2ijt5er5wempg4sZ:~# fdisk -S 56 /dev/vdb Welcome to fdisk (util-linux 2.27.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0x44e128c4. Command (m for help): n Partition type    p   primary (0 primary, 0 extended, 4 free)    e   extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-41943039, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-41943039, default 41943039): Created a new partition 1 of type 'Linux' and of size 20 GiB. Command (m for help): wq The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks. root@iZbp16h2ijt5er5wempg4sZ:~# ll /dev/vd* brw-rw---- 1 root disk 253,  0 Jan  5 17:44 /dev/vda brw-rw---- 1 root disk 253,  1 Jan  5 17:44 /dev/vda1 brw-rw---- 1 root disk 253, 16 Jan  5 17:58 /dev/vdb brw-rw---- 1 root disk 253, 17 Jan  5 17:58 /dev/vdb1  ##新增分区 root@iZbp16h2ijt5er5wempg4sZ:~# mkfs.ext4 /dev/vdb1    ##格式化 mke2fs 1.42.13 (17-May-2015) Creating filesystem with 5242624 4k blocks and 1310720 inodes Filesystem UUID: cef1625c-7533-4308-bc44-511580e3edc8 Superblock backups stored on blocks:         32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,         4096000 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done


移动 Docker 的数据到新的磁盘

  1. 首先先停止 Docker daemon,保证移动的时候数据完整,执行 service docker stop 命令停止 Docker daemon。

  2. 先将 Docker 默认数据目录下的数据移动到一个备份的目录,例如 /var/lib/docker_data,执行命令 mv /var/lib/docker /var/lib/docker_data。

  3. 然后把新的格式化好的磁盘挂载到 /var/lib/docker 目录,执行命令 echo "/dev/vdb1 /var/lib/docker ext4 defaults 0 0" >>/etc/fstab && mkdir /var/lib/docker && mount -a。

  4. 把之前备份的 Docker 数据移动到新的磁盘上,执行命令 mv /var/lib/docker_data/* /var/lib/docker/。

启动 Docker daemon,并检查数据位置

  1. 启动 Docker daemon,执行命令 service docker start。

  2. 执行命令 df,可以看到 /var/lib/docker 挂载到了新的磁盘上。

     root@iZbp16h2ijt5er5wempg4sZ:/# df -h Filesystem      Size  Used Avail Use% Mounted on udev            2.0G     0  2.0G   0% /dev tmpfs           396M  7.1M  389M   2% /run /dev/vda1        40G  2.7G   35G   8% / tmpfs           2.0G  476K  2.0G   1% /dev/shm tmpfs           5.0M     0  5.0M   0% /run/lock tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup tmpfs           396M     0  396M   0% /run/user/0 /dev/vdb1        20G  2.1G   17G  12% /var/lib/docker  ##该目录挂在到新的磁盘上 ....


  3. 执行命令 docker ps,查看容器是否丢失,根据需要重启相关容器,如没有设置 restart:always 标签的容器。

感谢你能够认真阅读完这篇文章,希望小编分享的"怎么给容器服务的Docker增加数据盘"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

数据 磁盘 命令 目录 容器 格式 镜像 机器 篇文章 移动 服务 实例 方式 空间 存储 很大 备份 大小 时候 需求 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 居家互联网科技有限公司 太原新华互联网科技学校怎么样 博兴的互联网电子科技公司 新华互联网科技2019 互联网时代科技改变生活 湖南诚度互联网科技有限公司 世界互联网科技公司市值排名 恒生互联网科技指数跳水 广西互联网科技孵化中心 佛山市翊博互联网络科技有限公司 互联网在线教育科技创业 科技大学互联网 互联网第三次科技革命特征 广东工业互联网大赛深圳学泰科技 宇信科技在杭州互联网排第几 互联网高科技行业有哪些企业 互联网科技新闻 唯美互联网科技 互联网金融运营模式中的金融科技 科技互联网公司两年变化 互联网科技公司 科技互联网公司装修 互联网络科技有限公司 平安科技 互联网 互联网科技集团 南京欣网互联网科技 互联网科技ppt模板 深圳天众互联网科技公司 成都仁贤领冠互联网科技有限公司 互联网5g黑科技有哪些
0