docker持久化数据存储

一、把数据存储到本地/opt/data目录下面,容器挂载到/data目录下面

1
2
[root@docker-1 ~]#  docker run -itd --name www -v /opt/data:/data nginx
bb726e9083c12ffc4d61605fef40e1cbdd9b7b85e7b4aca4abe7bbc1580994e5

  注:

    1、--name www:www挂载容器镜像名称

    2、/opt/data:/data:/opt/data本地存储目录。/data挂载到镜像的存储目录

    3、nginx:nginx镜像名称

二、利用--volumes-from 实现多容器共享一个目录存储

1
2
[root@docker-1 ~]# docker run -itd --name web --volumes-from www nginx
10a190a6dece08e3fbb168a33a61c4f0af2b129863742ec28aeec6ed590fa96d

  注:

    --name web:web挂载镜像的名称

    --volumes-from www:指向共享容器的名称。(www是共享容器名称)

三、验证挂载

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#进入web容器,在/data目录下面创建a.txt
[root@docker-1 ~]# docker exec -it web bash
root@10a190a6dece:/# cd /data/
root@10a190a6dece:/data# touch a.txt
root@10a190a6dece:/data# ls -l
total 0
-rw-r--r--. 1 root root 0 Sep 27 22:51 a.txt
 
#查看本地机器a.txt是否存在
[root@docker-1 ~]# ls -l /opt/data
总用量 0
-rw-r--r--. 1 root root 0 9月  28 06:51 a.txt
 
#进入www容器添加内容到/data/a.txt里面
[root@docker-1 ~]# docker exec -it www bash
root@bb726e9083c1:/# ls -l /data/
total 0
-rw-r--r--. 1 root root 0 Sep 27 22:51 a.txt
root@bb726e9083c1:/# cat /data/a.txt
root@bb726e9083c1:/# echo "12345" > /data/a.txt
root@bb726e9083c1:/# cat /data/a.txt
12345
 
#查看www容器添加内容本地a.txt是否存在
[root@docker-1 ~]# cat /opt/data/a.txt
12345
 
#查看web容器/data/a.txt内容是否存在
[root@docker-1 ~]# docker exec -it web cat /data/a.txt
12345

  

     

posted @   点点滴滴的努力  阅读(203)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
点击右上角即可分享
微信分享提示