1、服务器端
安装nfs:yum install nfs-utils -y
配置nfs:
[root@basic opt]#mkdir -p /opt/container_data
并制作一些测试数据:
nfs数据持久化

[root@basic opt]# cat /etc/exports
/opt/container_data 10.0.2.0/24(rw,no_root_squash)
启动:
systemctl start nfs

2、客户端
首先也要安装这个nfs包:yum install nfs-utils -y

创建一个service:
[root@master1 ~]# docker service create --mount 'type=volume,src=nfs-vol,dst=/usr/share/nginx/html,volume-driver=local,volume-opt=type=nfs,volume-opt=device=:/opt/container_data,"volume-opt=o=addr=10.0.2.10,vers=4,soft,timeo=180,bg,tcp,rw"' --name nginx-nfs nginx

nfs数据持久化

登录node1机器验证:
nfs数据持久化_第1张图片

nfs数据持久化_第2张图片

将副本数扩大到3片:
[root@master1 ~]# docker service scale nginx-nfs=3
nfs数据持久化

nfs数据持久化

登录master1机器验证:
nfs数据持久化_第3张图片
nfs数据持久化_第4张图片

发现master1 和 node1 一样 都挂载了 nfs服务器里面相同的文件目录。

备注

单机挂载nfs:

[root@node2 ~]# mount -t nfs 192.168.137.10:/opt/container_data /opt/container_data
[root@node2 ~]# mkdir -p /opt/container_data
nfs数据持久化