docker挂载数据卷-以nginx为例

目录

一、什么是数据卷

二、数据卷的作用

三、如何挂载数据卷

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

2、查看数据卷

3、查看数据卷详情

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

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

[6、 访问nginx查看效果](#6、 访问nginx查看效果)


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

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

二、数据卷的作用

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

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

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

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

三、如何挂载数据卷

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

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

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

bash 复制代码
docker run -d --name nginx -p 80:80 -v html:/usr/share/nginx/html nginx

2、查看数据卷

bash 复制代码
[root@hadoop-001 html]# docker volume ls
DRIVER    VOLUME NAME
local     html

3、查看数据卷详情

bash 复制代码
[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、尝试在宿主机修改数据卷

bash 复制代码
cd /var/lib/docker/volumes/html/_data
vim index.html

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

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

bash 复制代码
[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查看效果

相关推荐
xixingzhe28 小时前
SpringBoot + Nginx 免鉴权接口安全防护方案
运维·nginx·安全
Tronlong创龙9 小时前
SBC-TL3588 单板机 / EPC-TL3588 工控机 Docker 开发手册(二)
docker·开发板·嵌入式开发·硬件开发·工业控制
AI服务老曹13 小时前
视觉算法模型管理完整流程:多版本上线、灰度发布与回滚的落地实践
人工智能·docker·音视频
飞翔沫沫情15 小时前
K8s Alloy 采集 Pod 控制台日志
云原生·容器·kubernetes
酷炫的水壶15 小时前
使用memc-nginx和srcache-nginx模块构建高效透明的缓存机制
运维·nginx·缓存
辉的技术笔记15 小时前
拆解 Dify 的 Celery:15 个队列都在干什么
docker
智商偏低17 小时前
Windows Nginx 完整安装 + 启动教程
运维·nginx
潮起鲸落入海20 小时前
Kubernetes Metric Server, Quota and Limits
容器·kubernetes
梦想的颜色20 小时前
Docker 容器化本地部署 Claude Code 完整硬核教程|隔离沙盒 + 国产模型直连 + 持久化 Skill
运维·容器·ai 工程化·沙盒隔离·docker 本地部署·claude code硬核实战·国内国产模型接入
渣渣盟21 小时前
Docker 运维常用命令手册(含扩容与实战)
运维·docker·容器