docker容器(4)——数据卷

本文详细介绍了Docker数据卷的管理,包括bindmount的使用、Dockermanagedvolume的优势,以及convoy卷插件的部署和操作。重点讨论了两者之间的区别和实际应用场景,适合深入理解Docker数据持久化的开发者阅读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker数据卷管理

为什么要用数据卷呢?
docker分层文件系统

  • 性能差
  • 生命周期与容器相同
    docker数据卷
  • mount到主机中,绕开分层文件系统
  • 和主机磁盘性能相同,容器删除后依然保留
  • 仅限本地磁盘,不能随容器迁移

docker提供的两种卷

  • bind mount
  • docker managed volume

bind mount

是将主机上的目录或文件mount到容器里。
使用直观高效,易于理解。
使用 -v 选项指定路径,格式 (host path):(container path)

docker run -d --name lht -v /opt/website:/usr/share/busybox/html busybox

在这里插入图片描述

bind mount 默认权限是读写rw,可以在挂载时指定只读ro。
-v选项指定的路径,如果不存在,挂载时会自动创建。

docker run -it --name vm1 -v /etc/yum.repos.d/dvd.repo:/etc/yum.repos.d/dvd.repo:ro rhel7 bash

在这里插入图片描述
在这里插入图片描述

docker managed volume

bind mount必须指定host文件系统路径,限制了移植性。
docker managed volume 不需要指定mount源,docker自动为容器创建数据卷目录。
默认创建的数据卷目录都在 /var/lib/docker/volumes 中。
如果挂载时指向容器内已有的目录,原有数据会被复制到volume中。

bind mount与docker managed volume对比

相同点:两者都是 host 文件系统中的某个路径
不同点:

在这里插入图片描述

卷插件(convoy)

# convoy卷插件子命令
convoy list		列出卷
convoy delete		删除卷
convoy snapshot create	创建快照
convoy snapshot delete	删除快照
convoy backup create		创建备份
convoy create res1 --backup <url>		还原备份

convoy卷插件实现
支持三种运行方式:devicemapperNFSEBS

  • NFS方式
    在所有节点提前挂载NFS存储,此处我用的实验机为:
    server1、server9
yum install -y nfs-utils # 下载插件
mkdir /mnt/nfs 
vim /etc/exports
/mnt/nfs        *(rw,no_root_squash) 
chmod 777 /mnt/nfs
systemctl start nfs

在这里插入图片描述
在这里插入图片描述
解压convoy插件包,加入bash运行环境目录
配置缺省目录,运行convoy插件

tar zxf convoy.tar.gz #解压
mv convoy* /usr/local/bin/
mkdir -p /etc/docker/plugins
cd /etc/docker/plugins
echo "unix:///var/run/convoy.sock" > /etc/docker/plugins/convoy.spec
convoy daemon --drivers vfs --driver-opts vfs.path=/mnt/nfs &
convoy list

在这里插入图片描述
节点2上,挂载节点1的共享目录

mkdir /mnt/nfs
mount 172.25.33.9:/mnt/nfs /mnt/nfs

在这里插入图片描述
在节点2,解压convoy插件包,加入bash运行环境目录
配置缺省目录,运行convoy插件
在节点2创建convoy卷:

convoy create vol1
convoy list

在这里插入图片描述
在节点1可以看到节点2创建的卷
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值