docker快速学习--容器的数据卷--04

2023-11-09

一、数据卷概念

  1. 数据卷是宿主机中的一个目录或文件
  2. 当容器目录和数据卷目录绑定后,对方的修改会立即同步
  3. 一个数据卷可以被多个容器同时挂载
  4. 一个容器也可以被挂载多个数据卷

在这里插入图片描述

二、数据卷作用

  1. 容器数据持久化
  2. 外部机器和容器间接通信(数据交互)
  3. 容器之间数据交换

在这里插入图片描述

三、配置数据卷

  1. 创建启动容器时,使用 –v 参数 设置数据卷
# 设置数据卷
docker run ... –v 宿主机目录(文件):容器内目录(文件) ... 
# 为容器内目录添加只读权限
# 容器内目录:不能创建文件,为只读权限,但是宿主机目录 下可以创建东西
# 宿主机目录 下可以创建东西
docker run ... –v 宿主机目录(文件):容器内目录(文件):ro ... 
  1. 注意:
    1. 目录必须是绝对路径
    2. 如果目录不存在,会自动创建
    3. 可以挂载多个数据卷

3.1、验证–当容器目录和数据卷目录绑定后,对方的修改会立即同步

启动容器,可以看到容器内部创建一个/root/data-container目录

docker run -it --name c2  -v /root/data:/root/data-container centos:latest 

在这里插入图片描述

查看宿主机,可以看到宿主机创建了/root/data目录

在这里插入图片描述

在宿主机/root/data目录,添加内容

在这里插入图片描述

查看容器内部,看到也存在相同的内容

在这里插入图片描述

3.2、验证–容器数据持久化

删除刚刚的c2容器

在这里插入图片描述

看到数据卷目录没有被删掉

在这里插入图片描述

再创建c2容器,容器的目录挂载到原先的数据卷中,可以看到原先的数据还在。
这说明数据卷目录可以作为容器数据的持久化。
在这里插入图片描述

3.3、验证–一个容器也可以被挂载多个数据卷

docker run -it --name c3  -v /root/data1:/root/data-container1 -v /root/data2:/root/data-container2 centos:latest 

在这里插入图片描述

在这里插入图片描述

3.4、验证–一个数据卷可以被多个容器同时挂载

实现2个容器挂载同一个数据卷,实现数据同步功能

在这里插入图片描述

docker run -it --name c4 -v /root/data-centos:/root/data-data4  centos:latest 
docker run -it --name c5  -v /root/data-centos:/root/data-data5  centos:latest 

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在c4容器中,添加数据到a.txt,a.txt会同步到数据卷,数据卷又将数据同步到c5容器,最终c4和c5的数据是一致的。

在这里插入图片描述

在这里插入图片描述

四、配置数据卷容器

4.1、目的

  1. 简化多容器进行数据交换

在这里插入图片描述

4.2、配置数据卷容器

创建启动d3数据卷容器,使用 –v 参数 设置数据卷

docker run -it --name=d3 -v /d3-centos   centos:latest 

创建启动 d1 d2 容器,使用 –-volumes-from 参数 设置数据卷

docker run -it --name=d1 --volumes-from d3 centos:latest 

docker run -it --name=d2 --volumes-from d3 centos:latest 

查看数据是同步

在这里插入图片描述

d3容器添加数据

在这里插入图片描述

d2容器查看数据

在这里插入图片描述

查看d1数据卷目录和容器目录

docker inspect d1

在这里插入图片描述

查看d2数据卷目录和容器目录

docker inspect d2

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

docker快速学习--容器的数据卷--04 的相关文章

随机推荐

  • GD32E103首次烧写程序后J-link无法识别的解决方法

    原因 用的例程的时钟配置与电路板所用晶振频率不一致 导致第一次能识别单片机 烧写程序后 无法再次识别 解决方法 使用J Flash擦除 具体步骤 1 建立Falsh工程 此时BOOT0 0 如果不是复位状态 则无法连接目标板 此时需要将RE
  • 使用openssl命令方式生成公钥、私钥、证书

    以下是在 Windows 环境下使用 OpenSSL 命令生成这些文件的步骤 生成私钥 打开命令提示符 并导航到您希望保存私钥文件的目录 然后执行以下命令以生成私钥文件 例如 private key openssl genpkey algo
  • Java8 函数式编程

    函数式编程 这里 函数 应该理解为数学上的函数 即y f x 函数式编程的理解出发点 比如给Swing中Button添加监听器addListener Listener接口 为例 没有lambda表达式时一般都是通过匿名内部类new XXXL
  • JavaScript笔记_this指向

    this 指向问题 普通函数的this由调用规则来确定 而箭头函数的的this 本身没有this 取决于父作用域的this 代码执行后 箭头函数取决于父级作用域的this 只跟随父作用域的this改变而改变 普通函数的this取决于调用方式
  • Tomcat 无法访问,未发送任何数据

    问题描述 直接上图 解决 开启的Tomcat 的cmd窗口不要关闭 访问localhost 8080 试试 8080接口被其它服务占用了 修改8080接口 不要修改为1 1023端口和常用端口3306等 首先关闭Tomcat 双击shutd
  • 【Java】Java基础习题1

    这里写目录标题 1 编译Java应用程序源文件将产生相应的字节码文件 字节码文件的扩展名为 2 Java源程序文件的扩展名为 3 编译Java源代码 java 文件的工具为 4 执行Java字节码 class 文件的工具为 5 main方法
  • Spring Security的十一个拦截器

    目录 一 SecurityContextPersistenceFilter 二 LogoutFilter 三 AbstractAuthenticationProcessingFilter 四 DefaultLoginPageGenerati
  • 基于PaddleOCR的DBNet多分类文本检测网络

    目录 目的 模型网络结构对比 代码实现 1 数据集格式 2 配置文件调整 3 数据预处理 4 模型代码调整 5 添加多分类loss 6 修改db postprocess py 7 修改train py eval py infer det p
  • VS无法定位程序输入点于动态链接库

    Qt系列文章目录 文章目录 Qt系列文章目录 前言 一 问题原因 前言 我们使用QtCreator创建的工程 使用visual studio 打开 前提是vs中安装了qt vsaddin msvc插件 VS无法定位程序输入点于动态链接库 一
  • 清除mac中自动记录的git用户名和密码

    应用程序 实用工具 双击钥匙串 右上角搜索github 右击选项删除
  • 陀螺研究院

    摘要 产业动态 由建行发起的价值30亿美元数字债券将推迟上市 15国正式签署RCEP 全球规模最大自贸协定达成 浙江省首个产业区块链赋能中心落地宁波江北 越南教育和培训部计划在2021年实施区块链技术颁发文凭 深圳市政务区块链专委会正式揭牌
  • pytorch代码实现之SAConv卷积

    SAConv卷积 SAConv卷积模块是一种精度更高 速度更快的 即插即用 卷积 目前很多方法被提出用于降低模型冗余 加速模型推理速度 然而这些方法往往关注于消除不重要的滤波器或构建高效计算单元 反而忽略了特征内部的模式冗余 原文地址 Sp
  • 图像处理(RGB分离)

    图像处理技术 RGB分离 最近学习了图像处理技术 第一个小工程做的事将一张图片的rgb分离 存为三张图片 就像PS中的RGB通道的三张图片一样 我们先准备两张24位真彩色图片 一张宽度像素为4的倍数 一张则不是 我们来看下它的文件头和信息头
  • js文字朗读

    var u new SpeechSynthesisUtterance function read text speed u text text u lang zh u rate speed speechSynthesis speak u
  • 游戏开发安卓知识杂谈系列:关于下载jdk

    想要下载jdk11 去oracle官网下载jdk 发现jdk13以下的版本需要账号登陆 但是去注册账号发现官网账号无法注册 找了半天 网上说Oracle自java SE 8的某个版本以后 需要进行付费才能下载 两个解决办法 找百度网盘或者第
  • webpack使用(5)之处理CSS

    一 需要引入的loader 1 style loader 主要负责创建style标签 并将标签塞入到文档中 2 css loader 主要负责css解析 3 less loader 负责解析less 二 如何引入css资源 1 安装配置st
  • 【数据结构】哈希表

    散列表 也叫哈希表 是根据关键码值而直接进行访问的数据结构 它通过把关键码值映射到表中一个位置来访问记录 以加快查找的速度 哈希表的核心是合适的hash函数 数据范围 解决冲突的办法 这里通过数字分析法设计哈希函数 链地址法解决从冲突 冲突
  • 2023华为OD机试真题【敏感字段加密/字符串风格】【2023.Q2】

    题目描述 给定一个由多个命令字组成的命令字符串 1 字符串长度小于等于127字节 只包含大小写字母 数字 下划线和偶数个双引号 2 命令字之间以一个或多个下划线 进行分割 3 可以通过两个双引号 来标识包含下划线 的命令字或空命令字 仅包含
  • 【机器学习】通俗易懂决策树(实战篇)python实现(为新患者找到合适的药物)

    决策树 我们将学习一种更流行的机器学习算法 决策树 我们将使用此算法从患者的历史数据以及他们对不同药物的反应大数据中 用训练过的决策树来构建分类模型预测未知患者的类别 或者说为新患者找到合适的药物 导入以下包 numpy as np pan
  • docker快速学习--容器的数据卷--04

    一 数据卷概念 数据卷是宿主机中的一个目录或文件 当容器目录和数据卷目录绑定后 对方的修改会立即同步 一个数据卷可以被多个容器同时挂载 一个容器也可以被挂载多个数据卷 二 数据卷作用 容器数据持久化 外部机器和容器间接通信 数据交互 容器之