Docker Swarm - NFS 共享数据卷

0.133字数 156阅读 2656

启动 NFS 服务(CentOS 7)

首先,安装 rpcbind 和 nfs-utils

yum install -y rpcbind nfs-utils

然后,编辑 /etc/exports 配置 NFS 共享目录,示例:

[root@VM_0_5_centos ~]# cat /etc/exports
/root/share *(rw,sync,all_squash,anonuid=0,anongid=0)

更多详细配置参考 https://www.centos.bz/2017/07/centos7-1-install-nfs/

启动 rpcbind 和 nfs

sudo service rpcbind start

sudo service nfs start

查看共享的目录

exportfs

修改配置文件后,重新加载配置文件

exportfs -vr

视频演示:https://www.youtube.com/watch?v=_4XudYZ6M_k

创建 NFS 数据卷

docker volume create --driver local \
    --opt type=nfs \
    --opt o=addr=<NFS-Server>,rw \
    --opt device=:<Shared-Path> \
    share

创建多副本服务

docker service create \
  --mount type=volume,source=<Volume-Name>,destination=<Container-Path> \
  --replicas 2 \
  <Image>

相关文档

add-bind-mounts-volumes-or-memory-filesystems

create-nfs-volume

补充说明

注意读写分离,避免多写导致未知的错误

常见问题

1、NFS4 创建数据卷

docker volume create --driver local \
--opt type=nfs4 \
--opt o=addr=<NFS-Server>,rw \
--opt device=:<Shared-Path> \
share

推荐阅读更多精彩内容