Docker - 13. 容器卷常用操作

2023-11-13

目录

1. 宿主和容器之间映射添加容器卷

2. 查看容器卷是否挂载成功

3. 容器卷 ro 和 rw 读写规则

4. 卷的继承与共享 


1. 宿主和容器之间映射添加容器卷

公式:docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录 镜像名

docker run -it --privileged=true -v /tmp/host_data:/tmp/docker_data --name=u1 ubuntu

示例:通过在docker内新建文件,验证host下是否同步该文件

# 1. 新建并进入容器,添加容器卷映射关系
docker run -it --privileged=true -v /tmp/host_data:/tmp/docker_data --name=u1 ubuntu
# 2. 进入容器内/tmp/docker_data 目录
cd /tmp/docker_data
# 3. 新建 docker.txt文件
touch docker.txt
# 4. 退出容器
exit
# 进入宿主机内的/tmp/host_data目录
cd /tmp/host_data
# 查看在docker内新建的docker.txt文件是否存在
ls

 注意:当我们停掉容器的时候,在宿主机上新建文件,然后再开启容器并进入,该文件也会被同步更新到容器中,因此容器卷与容器状态无关。


2. 查看容器卷是否挂载成功

语法:docker inspect 容器id

# 查看容器id
docker ps -a
# 查看是否挂载成功
docker inspect 7c528181c837

 如果挂载成功,则inspect命令下的mount字段会有如下显示:


3. 容器卷 ro 和 rw 读写规则

在默认情况下,使用第一节中:宿主和容器之间映射添加容器卷的命令时,默认的读写方式是主机和容器内都可以进行读写操作,即默认为如下公式,只是省略了后面的冒号,即

docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录:rw 镜像名

但如果想容器实例内部被限制,只能读取宿主机上的文件,但不能进行写操作,需要如下命令:

docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录:ro 镜像名

即此时如果宿主机写入内容,可以同步给容器,容器可以读取到,但不能进行写操作


4. 卷的继承与共享 

按照上述操作u1完成了和宿主机的映射,而容器u2如想继承u1的卷规则,可以使用如下命令:

 语法:docker run -it --privileged=true -volumes-from 父类 --name u2 镜像名

docker run -it --privileged=true --volumes-from=u1 --name=u2 ubuntu

 通过上述操作可以实现主机和两个容器之间的数据共享,比如在u2新建一个文件,主机和u1均会进行同步。如果我们停掉了u2的容器,然后再宿主机上新建一个文件,则u1会直接同步,那当u2重启之后进入也能查看到该文件。本质上宿主机和多个容器能够共享所有文件,尽管某一容器停止,当其他容器和宿主机进行文件操作时,该容器重启进入后文件还会进行同步和更新。

注:该博客中部分为内容来自于的 容器卷之间的继承 学习笔记,仅供参考。如看其他Docker内容,可看我博客Docker系列aaron_neil_Dcoker系列,持续更新中。 

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

Docker - 13. 容器卷常用操作 的相关文章

随机推荐

  • Python还能这样学?独一档的学习路线与方法!两个月就能彻底掌握

    为什么要选择学习Python 我大学本专业当时学的是过时很久的工程物流管理 经常跟学长学姐们聊到他们的就业情况 然后自己也对未来的就业之路产生了很大的怀疑 后面经过一些了解 以及学长学姐的介绍 知道了Python 后面深入的了解了后 我果断
  • 基于Protege的知识建模实战

    一 Protege简介 用途和特点 1 Protege简介 Protege是斯坦福大学医学院生物信息研究中心基于Java开发的本体编辑和本体开发工具 也是基于知识的编辑器 属于开放源代码软件 这个软件主要用于语义网中本体的构建 是语义网中本
  • 华为OD机试真题B卷 Java 实现【停车场车辆统计】,附详细解题思路

    一 题目描述 特定大小的停车场 数组cars 表示 其中1表示有车 0表示没车 车辆大小不一 小车占一个车位 长度1 货车占两个车位 长度2 卡车占三个车位 长度3 统计停车场最少可以停多少辆车 返回具体的数目 二 输入描述 整型字符串数组
  • DHCP DNS 综合案例分析

    1 首先我们来配置一下192 168 1 2这台机器 1 1 操作系统 windows server 2003 R2 1 2 IP 192 168 1 2 24 GW 1922 168 1 1 DNS 192 168 1 2 注意 这台机器
  • 阿里云盘内测_【邀请码】阿里云盘内测码分享

    备受瞩目的阿里云网盘已在苹果App Store上架 并更名 阿里云盘 最新版本更名为v1 0 1 8 月下旬 阿里巴巴推出了一款名为 阿里云网盘 的独立 App 该应用开发者为阿里旗下的阿里云团队 定位是为 C 端用户提供可靠安全的存储备份
  • CUBEIDE 使用指南

    cubeIDE includes 下一直有一个错误的路径 如图 不知道什么原因引入了一个错误的路径怎么也消不掉 最后发现在工程文件里 用记事本等打开 cproject文件 删掉对应路径就好了 图是已经删掉的了 2 include 路径问题
  • QT信号与槽机制

    QT开发 QT信号与槽机制 一 QT消息模型 QT封装了具体操作系统的消息机制 遵循经典的GUI消息驱动事件模型 QT定义了与操作系统消息相关的自己的概念 即信号与槽 信号signal是由操作系统产生的消息 槽slot是程序中的消息处理函数
  • Openmv,stm32串口(定时器配置)

    新手学习记录中 得先有from pyb import UART的包以及import json 初始化uart UART 3 115200 表示是在串口3处 其波特率为115200 需要看openmv的原理图 看uart3的TX和RX是哪两个
  • sklearn矩阵分解类库学习

    sklearn decomposition模块提供矩阵分解算法 其他PCA NMF 或ICA 其中大部分算法都被视为降维技术 主成分分析 sklearn decomposition PCA n components None copy Tr
  • 清空数组的方法

    直接置空 堆内存中的值其实没变 var b 1 2 3 4 var a b a console log a console log b splice splice表示起始位置 第二个参数表示删除的长度 第三个参数表示插入的元素 var ar
  • spark-on-mesos

    参考网址 https spark apache org docs latest running on mesos html https mesos cn gitbooks io mesos cn content OverView spark
  • 头歌python实训通关六——统计数字和字母

    第1关 统计文件中大写字母出现的次数 任务描述 本关任务 编写程序 统计一个文本文件中出现的大写字母和它们出现的次数 并输出 相关知识 为了完成本关任务 你需要掌握 1 读文本文件 2 字典操作 3 列表操作 4 字符串操作 编程要求 根据
  • 改进的KMeans 点云聚类算法 根据体元中的点数量计算点密度,并获取前K个点密度最大的体元作为初始聚类中心(附 matlab 代码)

    KMeans函数的主要逻辑如下 使用InitCenter函数初始化聚类中心 该函数根据体元密度选择初始聚类中心 该函数的输入参数包括数据 data 聚类中心数量 centerNum 和体元数量 voxelNum 根据点云的取值范围计算包围盒
  • 东方财富选股公式

    1 今天的公式是东方财富通可用的 部分公式其它软件 比如通达信 也是可以用的 但不保证完全通用 其它软件 大智慧 通达信 专用公式正在整理中 后续发给大家 2 导入公式过程 打开东财 gt 上方分析菜单 gt 公式管理器 gt 用户公式 g
  • [转]Spring2+struts2+ibatis整合

    Spring2 struts2 ibatis整合 前几天因为需要 将spring2 struts2和ibatis进行了整合 整合过程涉及到很多技巧 因此作为日志保存在此 以便今后查询 各个框架在本项目内的作用 spring2 主要利用ioc
  • zlmediakit使用手册

    1 http web hook地址https github com ZLMediaKit ZLMediaKit wiki MediaServer E6 94 AF E6 8C 81 E7 9A 84HTTP HOOK API 2 api地址
  • ubuntu安装chrome

    又在网上搜索 下面方法可行 复制代码 代码如下 Download google chrome for ubuntu from terminal with the following command For the 32 bit versio
  • linux权限---【600,644,700,755,711,666,777】

    chmod命令详解 使用权限 所有使用者 使用方式 chmod cfvR help version mode file 说明 Linux Unix 的档案存取权限分为三级 档案拥有者 群组 其他 利用 chmod 可以藉以控制档案如何被他人
  • vue 项目在ie浏览器下报错CRIPT5022: SecurityError sockjs.js (1683,5)

    百度爸爸给的解决方法 找到 node modules sockjs client dist sockjs js 2 找到代码的 1605行 try self xhr send payload 注释掉 catch e self emit fi
  • Docker - 13. 容器卷常用操作

    目录 1 宿主和容器之间映射添加容器卷 2 查看容器卷是否挂载成功 3 容器卷 ro 和 rw 读写规则 4 卷的继承与共享 1 宿主和容器之间映射添加容器卷 公式 docker run it privileged true v 宿主机绝对