Docker Volume存储配置

嚯嚯嚯www 33 2022-08-26

Docker Volume存储配置

volume 默认模式:工作节点宿主机数据同步到容器内。 
volume NFS 共享存储模式:管理节点宿主同步到工作节点宿主,工作节点宿主同步到容器。

volume 默认模式

直接创建命令,创建名为web-file

[root@master ~]# docker volume create web-file
#web-file的本地挂载点在/var/lib/docker/volumes/web-file/_data/

14624-olw52ojj2d.png

启动一个nginx的容器,将web-file映射nginx默认目录

[root@master ~]# docker run -it -d --name web -v web-file:/usr/share/nginx/html nginx
7050ae4941a6c57431d61a3f3c2ef722ae86daf1966de4f55caa26b78a6e9fa6

测试

进入本地挂载目录/var/lib/docker/volumes/web-file/_data/
此时容器内的目录已经同步在挂载点目录了,
重新写入测试内容到默认网页
49045-o7i19s9rk.png
网页访问
39262-ufeayf8zego.png

volume NFS 共享存储模式

master配置NFS共享目录
[root@master ~]# yum -y install nfs-utils
[root@master ~]# mkdir /share
[root@master ~]# chmod 777 /share/
[root@master ~]# vim /etc/exports
/share 192.168.1.0/24(rw,sync)
[root@master ~]# exportfs -rv
exporting 192.168.1.0/24:/share
[root@master ~]# systemctl restart rpcbind
[root@master ~]# systemctl enable rpcbind
[root@master ~]# systemctl restart nfs
[root@master ~]# systemctl enable nfs

node节点安装nfs
[root@node ~]# yum -y install nfs-utils
[root@node ~]# systemctl restart rpcbind
[root@node ~]# systemctl enable rpcbind
[root@node ~]# systemctl restart nfs
[root@node ~]# systemctl enable nfs

创建volume,将本地目录/share挂载,名称为test-home

[root@master ~]# docker volume create --driver local --opt type=nfs –opt o=addr=192.168.1.10,rw --opt device=:/share test-home

56496-4a1oea5fcki.png

在集群中创建nginx服务,端口映射到外部8888,挂载卷到nginx默认网页目录,创建3台副本。

[root@master ~]# docker service create --name test-nginx --publish 8888:80 --mount type=volume,source=test-home,destination=/usr/share/nginx/html --replicas 3 nginx
qc82k52h4kvm8i4ewirtfq0xw
overall progress: 3 out of 3 tasks 
1/3: running   [==================================================>] 
2/3: running   [==================================================>] 
3/3: running   [==================================================>] 
verify: Service converged

测试:

在外部/share目录中创建index.html网页
36496-mq8i75qx36m.png
进入docker 服务器容器,查看文件,文件已经成功挂载
35279-8nhsgpnxuyo.png
网页测试访问
71039-z6sodolczda.png

portainer可视化操作

安装了Portainer,以上操作都可以在网页控制台执行
进入Volume管理
此处已经显示了之前操作的volume
73920-u6u8rf6es8.png

点击create可创建
99390-kujdnxyve89.png

勾选NFS volume 也可以进行共享存储模式添加挂载
59375-4od068pj708.png