Docker 容器与 swarm 集群实战——docker 数据卷

本文介绍了Docker容器数据卷的基础管理,包括默认卷创建、数据持久化,以及通过convoy卷插件实现跨主机的数据同步。特别讨论了NFS作为卷后端的配置与使用,演示了在不同服务器上同步数据的过程。
摘要由CSDN通过智能技术生成

一、docker 卷管理基础

在这里插入图片描述
如果不加-v指定卷位置,默认创建

[root@server1 ~]# docker run -d --name registry -p 5000:5000 registry:2 
683706271b8f13781c0e4bfb83b3c2a73721215620dddd5ffddb4bd40597b8bf

此时inspect查看信息,会发现自己生成了一个长目录
在这里插入图片描述
此时就算将容器删除,但卷位置还存在
在这里插入图片描述

重新指定卷的位置并创建

[root@server1 ~]# docker run -d --name registry -p 5000:5000 -v /opt/registry:/var/lib/registry registry:2 
5241c43e57e0326681edcf0886ae980fcee3e99eb5a1ad02c265c566fe9a73cd

在这里插入图片描述
再次删除,卷位置信息仍然存在
在这里插入图片描述
注意:如果挂载时,指向的是已经有的目录,原有的数据会被复制到volume

1.将本机已经有的文件挂载到新打开的容器里,以只读的方式

[root@server1 registry]# docker run -it --name vm1 -v /etc/yum.repos.d/yum.repo:/yum.repo:ro ubuntu

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

二、convoy 卷插件的实现

支持三种运行方式:devicemapper、NFS、EBS

此处介绍NFS

1.在server1上安装nfs-utils,开启rpcbind服务

[root@server1 ~]# yum install -y nfs-utils
[root@server1 ~]# systemctl start rpcbind

2.编辑贡献策略

[root@server1 ~]# vim /etc/exports
/mnt/nfs        *(rw,no_root_squash)

3.开启nfs服务,创建共享目录

[root@server1 ~]# systemctl start nfs
[root@server1 ~]# mkdir /mnt/nfs
[root@server1 ~]# exportfs -rv
exporting *:/mnt/nfs
[root@server1 ~]# showmount -e
Export list for server1:
/mnt/nfs *

4.在server2上安装nfs-utils

[root@server2 ~]# yum install -y nfs-utils
[root@server2 ~]# sys
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值