Docker 存储卷管理

一、存储卷简介

存储卷是一种方便、灵活、高效的Docker容器内数据存储方式。存储卷可以在容器内的不同进程间共享数据,并且可以在容器之间共享和重用。

二、存储卷的优点

  1. 可以在容器之间共享和重用,避免了在不同容器之间复制数据的繁琐。
  2. 对数据卷的修改会立马生效,而不会影响容器镜像。
  3. 数据卷默认会一直存在,即使容器被删除。

三、存储卷的管理命令

  1. 通过Docker命令行工具volume 创建和管理存储卷。
    (1)创建存储卷:docker volume create my-vol
    在这里插入图片描述
    (2)查看所有存储卷:docker volume ls
    在这里插入图片描述
    (3)查看具体存储卷详细信息:docker volume inspect my-vol
    在这里插入图片描述
    (4)删除存储卷:docker volume rm my-vol
    在这里插入图片描述

四、存储卷的使用

  1. 启动容器时,将容器中usr/share/nginx/html目录的数据映射到my-vol存储卷上。
    docker run -d --name myweb -p 8080:80 -v my-vol:/usr/share/nginx/html nginx
    在这里插入图片描述

  2. 进入刚启动的容器中挂载数据的目录中。
    在这里插入图片描述

  3. 修改这个index.html的数据,然后退出容器,再获取这个容器的数据是不是别修改后的数据。
    在这里插入图片描述

  4. 分别重新创建两个容器,一个不进行挂载,另一个还是根据刚刚上面这个容器的挂载路径和存储卷进行挂载,创建完后再进行查看两个容器的数据。
    在这里插入图片描述

  5. 根据上图是不是可以很清晰的看出存储卷的作用了。其实就是将容器里的某些数据通过挂载的方式存放到存储卷上面,由于存储卷是放在宿主机上的,物理上跟容器是没有直接关系的,即便你这个容器是不是被删除了,存储卷上的数据会一直存放在宿主机上。如果哪个容器想用这个存储卷上的数据,之需要将容器中对应目录下的数据与这个存储卷进行挂载成功后,该容器对于目录下的数据就会直接使用存储卷上的数据。

五、使用宿主机进行挂载

  1. 当然也可以不挂载到存储卷上,直接挂载到宿主机某个目录下,只不过宿主机的目录下需要有一份跟容器目录中一样的数据文件,如果没有的话,容器中的文件就无法与宿主机上的文件进行映射,就会提示找不到文件。不过使用宿主机目录进行挂载更加灵活方便,比如:将容器中的一些配置文件挂载到宿主机目录下,后续如果需要进行容器配置文件的修改,只需要找到宿主机对应的挂载目录下的文件进行修改就好,无需再一个一个进入到容器中去修改。
    docker run -d --name myweb3 -p 8083:80 -v /host/nginx:/usr/share/nginx/html nginx
    在这里插入图片描述
  2. 在宿主机目录创建一个容器挂载目录中一样的文件
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/322822.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

QT_02 窗口属性、信号槽机制

QT - 窗口属性、信号槽机制 1. 设置窗口属性 窗口设置 1,标题 2,大小 3,固定大小 4,设置图标在 widget.cpp 文件中: //设置窗口大小,此时窗口是可以拉大拉小的 //1参:宽度 //2参:高度 this->resize(800, 600); //设置窗口标题 this->setWindowTitle("…

出个花活:出街&秀场丨当维乐VELO遇上英伦时尚之都

到底是谁还没有看过我们维乐坐垫今年的新花活呀,身边好多从前不爱运动的朋友,如今也沉迷上了公路车。我相信原因一定是由于对产品设计有着更高的要求,对于审美有着越来越高的追求,也是因为此大多数朋友最终都选择了维乐专业坐垫&a…

自定义页面,落地页面自由搭配

自定义页面 路径 应用 >> 新增自定义页面 功能简介 应用内新增「自定义页面」。 自定义页面是一个可以自由配置的落地页面,支持通过不同的入口设置连接到不同的链接地址,使得不同的应用资源可以根据业务场景化的展示。 使用场景: 一…

打造强大的Android C++工程

theme: cyanosis 好久没有写博客了,最近一直在做项目重构,动刀之深,让我无暇其他。今天终于告一段落了,就总结一下前段时间学习C时的一些开发心得吧。 因为Android系统🈶️C 语言开发的原因,每个 Android…

Flutter 混合开发 - aar打包

背景 项目接入 Flutter 后有两种方式,一种是 module 引入开发,一种是 aar 依赖开发。当前项目中在 Debug 阶段为了方便调试采用 module 开发,在发版时(即 Release 阶段)采用 aar 依赖引入。为了配合这种模式就需要在 …

【2023年度技术盘点】「年终盘点后端系列」探索服务架构体系的技术风向,构建微服务核心能力(升级版)

探索服务架构体系的技术风向,构建微服务核心能力 文章导航大纲前提背景架构未来的风向云原生化的微服务架构(未来软件架构)历史历代服务架构路径新时代架构预测服务架构方向—云原生化微服务云原生化微服务提升了哪些方面 云原生化微服务架构…

XV4001BC (数字输出) 车载用

XV4001BC、XV4001BD、XV4001KC和XV4001KD是车载用SPI/I2C输出接口,支持角速度输出、温度传感器输出以及20度倾斜实现。这些接口可适应各种汽车导航和通讯系统,符合AEC-Q200标准 SPI / I2C 输出接口角速度输出(16bit)、温度传感器输出(11bit)20度倾斜实现…

OpenAI ChatGPT-4开发笔记2024-04:Chat之Tool之2:multiple functions

从程序员到ai Expert 1 设定目标2 自定义function,3个3 接口。自定义function--->ChatGPT4 define function to call ChatGPT5 发起首次请求,告诉gpt要做什么,已经有哪些函数可以调动6 大结局7 参考资料 上一篇解决了调用一个函数的问题。这一篇扩展为…

钉钉审批流程解读

组织机构 部门 部门可以创建下级部门部门可以设置部门主管,可以是多人部门可以默认构建,沟通群可以设置部门信息,比如电话、简介可以设置部门的可见性,比如隐藏本部门,本部门将不会在组织机构、搜索,个人…

Activiti7官方在线流程设计器下载和部署

文章目录 一、流程设计器下载二、流程设计器简单运行三、流程设计器简单使用四、流程设计器持久化持久化会遇到的常见错误 五、流程设计器汉化说明菜单汉化操作汉化 参考文档 一、流程设计器下载 官网下载地址:https://www.activiti.org/get-started 点击直接获取官…

1.1 Heterogeneous Parallel Computing

1.1 Heterogeneous Parallel Computing 前言HETEROGENEOUS PARALLEL COMPUTING 前言 基于单个中央处理器(CPU)的微处理器,如英特尔奔腾系列和AMD皓龙系列的微处理器,二十多年来推动了计算机应用程序的性能快速提高和成本降低。 …

Qt中图片旋转缩放操作

在我们开发过程中,难免会遇到加载图片的问题,在上一个开发项目里我就遇到了图片缩放的问题,所以,我决定将这一部分好好研究,记录下来,希望对大家有帮助哟~ 在讲解之前,我们先看一看具体的展示效…