当前位置: 首页 > news >正文

docker挂载数据卷-以nginx为例

目录

一、什么是数据卷

二、数据卷的作用

三、如何挂载数据卷

1、创建nginx容器挂载数据卷

2、查看数据卷

3、查看数据卷详情

4、尝试在宿主机修改数据卷

5、查看容器内对应的数据卷目录

6、 访问nginx查看效果


​​​​​​​一、什么是数据卷

        挂载数据卷本质上就是实现容器内文件和宿主机文件的双向绑定。挂载数据卷可以使容器内的数据持久化保存在宿主机上,我们可以在容器内外对数据进行修改和访问,即使容器被删除,数据也不会丢失。这对于保存重要的数据或配置文件非常有用。

二、数据卷的作用

  1. 数据持久化:容器内的数据可以持久化保存在宿主机的指定目录中,即使容器被删除或重新创建,数据也不会丢失。

  2. 数据共享:宿主机上的一个目录可以被多个容器挂载,这使得这些容器可以共享相同的数据卷。

  3. 配置文件管理:配置文件、日志文件等可以通过挂载数据卷的方式管理,方便对容器的配置和日志进行管理和查看。

  4. 备份与恢复:可以通过备份数据卷的方式对容器中的数据进行备份,并在需要时将备份的数据卷恢复到容器中,实现数据的备份与恢复。

三、如何挂载数据卷

下面我们以nginx为例,创建nginx容器同时挂载数据卷

1、创建nginx容器挂载数据卷

把宿主机目录下html路径 和 容器内部目录/usr/share/nginx/html双向绑定,以实现数据卷的挂载。本地目录的默认前缀是/var/lib/docker/volumes

docker run -d --name nginx -p 80:80 -v html:/usr/share/nginx/html nginx

2、查看数据卷

[root@hadoop-001 html]# docker volume ls
DRIVER    VOLUME NAME
local     html

3、查看数据卷详情

[root@hadoop-001 html]# docker volume inspect html
[{"CreatedAt": "2024-04-30T16:16:08+08:00","Driver": "local","Labels": null,"Mountpoint": "/var/lib/docker/volumes/html/_data","Name": "html","Options": null,"Scope": "local"}
]

可以看到数据卷对应宿主机的数据文件为/var/lib/docker/volumes/html/_data       

"Mountpoint": "/var/lib/docker/volumes/html/_data",

4、尝试在宿主机修改数据卷

cd /var/lib/docker/volumes/html/_data
vim index.html

5、查看容器内对应的数据卷目录

进入容器命令行查看容器内对应的数据卷目录 发现容器内部的文件也发生修改

[roo[root@hadoop-001 _data]# docker exec -it nginx bash
root@ea9452fff829:/# cd /usr/share/nginx/html
root@ea9452fff829:/usr/share/nginx/html# ls
50x.html  index.html
root@ea9452fff829:/usr/share/nginx/html# cat index.html 
<!DOCTYPE html>
<html>
<head>
<title>HAHAHAHA</title>
...

6、 访问nginx查看效果

http://www.lryc.cn/news/344553.html

相关文章:

  • Docker-compose部署Fastapi项目
  • Eigen求解线性方程组
  • 7、Java基本数据类型的使用细节探讨(超详细版本)
  • MFC实现点击列表头进行排序
  • 用龙梦迷你电脑福珑2.0做web服务器
  • 秋招后端开发面试题 - JVM类加载机制
  • OceanBase 分布式数据库【信创/国产化】- OceanBase 配置项和系统变量概述
  • 单单单单单の刁队列
  • 电脑windows系统压缩解压软件-Bandizip
  • 图片公式识别@文档公式识别@表格识别@在线和离线OCR工具
  • Java高阶私房菜:JVM分代收集算法介绍和各垃圾收集器原理分解
  • 为什么IB损失要在100epochs后再用?
  • 《Video Mamba Suite》论文笔记(4)Mamba在时空建模中的作用
  • 【备战软考(嵌入式系统设计师)】10 - 软件工程基础
  • 随手笔记-GNN(朴素图神经网络)
  • C 语言指针怎么理解?
  • HTTP协议:通信机制、特点及实践应用
  • Leetcode—289. 生命游戏【中等】
  • 系统运维(虚拟化)
  • Linux域名解析
  • 树形结构和列表的区别
  • Go中json的解析和反解析
  • SpringBoot+vue实现退出功能
  • Linux操作系统中管理磁盘的另外一种操作方式。即LVM——逻辑卷管理操作
  • Lua 零基础入门
  • 记录DemoApplication.java不变蓝问题
  • 22_Scala集合Seq
  • 机器学习初学者 6 个核心算法!建议收藏,反复观看!
  • SpringBoot 打包所有依赖
  • QpushButton绘制圆角矩形并绘制背景颜色