【Docker】从零开始:12.容器数据卷

news2024/11/19 17:33:00

【Docker】从零开始:12.容器数据卷

  • 1.什么是容器数据库卷
  • 2.数据的覆盖问题
  • 3.为什么要用数据卷
  • 4.Docker提供了两种卷:
  • 5.两种卷的区别
  • 6.bind mount
  • 7.Docker managed volume
    • volume 语法
    • volume 操作参数

1.什么是容器数据库卷

  • 卷 就是目录或文件,存在于一个或多个容器中,由docker挂载到容器,但不属于联合文件系统,因此能够绕过Union File System提供一些用于持续存储或共享数据的特性。
    卷的设计目的就是数据的持久化,完全独立于容器的生存周期,因此Docker不会在容器删除时删除其挂载的数据卷。

将docker容器内的数据保存进宿主机的磁盘中。docker 将应用与运行的环境打包成镜像,run后形成容器实例运行 ,但是我们对数据的要求希望是持久化的。
Docker容器产生的数据,如果不备份,那么当容器实例删除后,容器内的数据自然也就没有了。为了能保存数据,在docker中我们使用卷。
在这里插入图片描述

2.数据的覆盖问题

如果挂载一个空的数据卷到容器中的一个非空目录中,那么这个目录下的文件会被复制到数据卷中。

  1. 如果挂载一个非空的数据卷到容器中的一个目录中,那么容器中的目录中会显示数据
  2. 卷中的数据。如果原来容器中的目录中有数据,那么这些原始数据会被隐藏掉。

3.为什么要用数据卷

  • docker分层文件系统
    • 性能差
    • 生命周期与容器相同
  • docker数据卷
    • mount到主机中,绕开分层文件系统
    • 和主机磁盘性能相同,容器删除后依然保留
    • 仅限本地磁盘,不能随容器迁移

4.Docker提供了两种卷:

  1. bind mount
  2. Docker managed volume

5.两种卷的区别

在这里插入图片描述

6.bind mount

  • bind mount 是将主机上的目录或文件mount到容器里。 使用直观高效,易于理解。 使用 -v 选项指定路径,格式 [host path]:[container path]
  • bind mount必须指定host文件系统路径,限制了移植性。
docker run --rm -it -v [本地路径]:[Docker内路径] [images]

7.Docker managed volume

  • docker managed volume不需要指定mount源,docker自动为容器创建数据卷目录。
  • 默认创建的数据卷目录都在/var/lib/docker/volumes中。
  • 如果挂载时指向容器内已有的目录,原有数据会被复制到volume中。
  • 只能支持目录的挂载,不能支持文件的挂载
docker run --rm -it -v [卷名称]:[Docker内路径] [images]

volume 语法

docker volume [COMMAND]

volume 操作参数

参数说明
create创建卷
inspect查看卷信息
ls卷列表
prune删除没用的卷
rm删除一个或多个卷

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

对全概率公式、贝叶斯公式的理解

目录 一、全概率公式 二、贝叶斯公式 三、综合题目 一、全概率公式 定义: 在事件A发生的前提下,事件A又作为事件B发生的条件,这样两两一组的概率总和,就为概率论公式。题目通常问的是一整个事件的概率。别急,请看例题。 1.18 …

2005-2023年6月中国全球投资追踪数据(China-Global-Investment-Tracker-2023-Spring)

2005-2023年6月中国全球投资追踪数据(China-Global-Investment-Tracker-2023-Spring) 1、时间;2005-2023年6月 2、来源:American Enterprise Institute 3、指标:Year、Month、Investor、Quantity、in、Millions、Share、Size、…

【Python】Playwright模块进行自动化测试

playwright是由微软开发的Web UI自动化测试工具,支持Node.js、Python、C# 和 Java语言,本文将介绍Python版本的Playwright使用方法。 微软开源了一个非常强大的自动化项目叫playwright-python,项目地址:https://github.com/micros…

鸿蒙(HarmonyOS)应用开发——生命周期、渲染控制、状态管理装饰器

生命周期 任何程序都是有一定的生命周期的。生命周期是记录从产生到销毁的过程;如果熟悉前端vue.js的话,就可以很好的理解生命周期。 自定义组件生命周期 ArkTS中,自定义组件提供了两个生命周期函数:aboutToAppear() 和aboutTo…

2023年【道路运输企业安全生产管理人员】最新解析及道路运输企业安全生产管理人员复审考试

题库来源:安全生产模拟考试一点通公众号小程序 道路运输企业安全生产管理人员最新解析是安全生产模拟考试一点通总题库中生成的一套道路运输企业安全生产管理人员复审考试,安全生产模拟考试一点通上道路运输企业安全生产管理人员作业手机同步练习。2023…

计算机毕业设计 基于SpringBoot的物业管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

JSP宾馆预定管理系统数据库设计过程ER图

**Hi**,今天给大家带来一款使用JSP和Servlet开发的宾馆预定管理系统的论文写作指导。需要使用本项目写文档的童鞋可以好好看看文末附项目的效果查看地址哦~ 一、项目功能 具体的功能看下面这张表,表里面只是截取了主要功能来说的。 员工角色管理员角色员…

实验题【网关设置+VRRP+OSPF】(H3C模拟器)

嘿,这里是目录! ⭐ H3C模拟器资源链接1. 实验示意图2. 要求和考核目标3. 当前配置3.1 PC1、PC2、PC3、PC4和PC5配置3.2 SW配置3.2.1 SW2配置3.2.2 SW3配置3.2.3 SW4配置3.2.4 SW1配置 3.2. R配置3.2.1 R1配置3.2.2 R2配置 ⭐ H3C模拟器资源链接 H3C网络…

记一次RocketMQ线上broker内存持续升高问题排查

RocketMQ 版本 5.1.0 jdk版本 1.8 JVM启动参数 -Xms46g -Xmx46g -XX:MetaspaceSize1259m -XX:MaxMetaspaceSize2517m -XX:UseG1GC -XX:G1HeapRegionSize16m -XX:G1ReservePercent25 -XX:InitiatingHeapOccupancyPercent30 -XX:SoftRefLRUPolicyMSPerMB0 -verbose:gc -Xlog…

卸载11.3的cuda,安装11.8的cuda及cudnn

linux查看cudnn版本_linux查看cudnn版本命令_在学习的王哈哈的博客-CSDN博客文章浏览阅读2.9k次,点赞6次,收藏6次。英伟达官方文档查看cuda版本cat /usr/local/cuda/version.txt或者nvcc --version 或者 nvcc -V查看cudnn版本网上都是这个但是不行cat /u…

Vue框架学习笔记——事件修饰符

文章目录 前文提要事件修饰符prevent(常用)stop(不常用)事件冒泡stop使用方法三层嵌套下的stop三层嵌套看出的stop: once(常用)capture(不常用)self(不常用&a…

Lombok新版超全面使用教程

一、Lombok介绍 Lombok是一个Java库,可以通过注解来简化Java类的编写,减少冗余的样板代码。它提供了一系列的注解,用于自动生成常见的代码,如getter和setter方法、构造函数、equals和hashCode方法、toString方法等。通过使用Lomb…

交流充电桩与直流充电桩的区别

1、背景 直流充电桩的学名是非车载充电机,是相对于交流充电桩而言的。交流充电桩是采用传导方式为具备车载充电机的电动汽车提供交流电能的专用装置。 2、交流充电桩和直流充电桩 1.1、交流充电桩 交流充电桩包括单相和三相交流充电桩。 图一是交流充电桩原理框…

5.3每日一题(不确定正负号的级数敛散性:和一个正项级数比较判定)

比较判别法和比较判别法的极限形式是对正项级数而言的&#xff0c;若一个级数和p级数比较&#xff0c;结果>0&#xff0c;则同敛散&#xff1b;若结果<0&#xff0c;则结果乘以-1 结果又同敛散了&#xff1b;所以只要比值不等于0&#xff0c;则同敛散&#xff1b; 所以当…

合共软件创新亮相:第102届上海电子展成就技术新篇章

2023年&#xff0c;第102届中国&#xff08;上海&#xff09;电子展活动在全球瞩目中圆满落幕。作为下半年华东地区最具影响力的电子展会&#xff0c;此次盛会吸引了来自全球的600家领先企业&#xff0c;共同探讨电子元器件行业的最新发展成果和趋势。 本届展会围绕核心先导元器…

SQL Injection (Blind)`

SQL Injection (Blind) SQL Injection (Blind) SQL盲注&#xff0c;是一种特殊类型的SQL注入攻击&#xff0c;它的特点是无法直接从页面上看到注入语句的执行结果。在这种情况下&#xff0c;需要利用一些方法进行判断或者尝试&#xff0c;这个过程称之为盲注。 盲注的主要形式有…

【Leetcode】【实现循环队列】【数据结构】

代码实现&#xff1a; typedef struct {int front;int back;int k;int* a;} MyCircularQueue;bool myCircularQueueIsEmpty(MyCircularQueue* obj) {return obj->frontobj->back; }bool myCircularQueueIsFull(MyCircularQueue* obj) {return (obj->back1)%(obj->…

M2BLS

U are randomly generated&#xff0c;g is an activation function 辅助信息 作者未提供代码

网页设计作业-音乐网站首页

效果图 网盘链接 链接&#xff1a;https://pan.baidu.com/s/1CO4jAOY0zk1AWTx_pC3UmA?pwdfuck 提取码&#xff1a;fuck

【仿写C++中的move函数和forward函数】

仿写实现move函数 一、值的类型 1.左值 描述&#xff1a;能够取地址的值成为左值 int a 10; const int b 15; int *pa &a; const int *pb &b;2.纯右值 描述&#xff1a;赤裸裸的字面值 eg(false , 3 , 12.23等) int a 13; int *p &a; //取a的地址 int …