【docker】数据卷和数据卷容器

目录

一、如何管理docker容器中的数据?

二、数据卷

1、数据卷原理

2、数据卷的作用

3、数据卷案例

三、数据卷容器

1、数据卷容器作用

2、数据卷容器案例

四、容器互连(centos镜像)


一、如何管理docker容器中的数据?

二、数据卷

1、数据卷原理

将容器内部的配置文件目录,挂载到宿主机指定目录下

  • 数据卷默认会一直存在,即使容器被删除
  • 宿主机和容器是两个不同的名称空间,如果想进行连接需要用ssh,exec和attch也类似于ssh这种方式登录
  • 在企业中ssh这种登录方式会比较危险,安全漏洞很大,尽量减少ssh这种,杜绝了频繁使用exec
  • 因此使用数据卷的方式把容器内部的文件目录挂载到宿主机指定目录下进行修改,当容器里的文件频繁需要修改时,不需要登录进去,直接使用数据卷方式在宿主机指定的目录下进行修改即可,方便又安全。

2、数据卷的作用

  • 数据卷是一个供容器使用的特殊目录,位于容器中,可以将宿主机目录挂载到数据卷上,对数据卷的修改操作立刻可见,并且更新数据不会影响影响镜像,从而实现数据在宿主机与容器之间的迁移。
  • 数据卷的使用类似于linu下对目录进行mount操作。

3、数据卷案例

创建两个容器,挂载到宿主机的同一个目录

               【宿主机目录】:【容器目录】
docker run -itd -v /var/www:/data1 --name ydq1 centos:7 bash
docker run -itd -v /var/www:/data2 --name ydq2 centos:7 bash
#将宿主机的目录/vae/www目录分别挂载到容器 ydq1和ydq2的/data1 和/data2目录上
//指定目录即使没有,也会自动创建echo "这都是些什么玩意,cao" > /var/www/ky20.txt

登录到ydq1和ydq2容器,查看挂载目录的文件是否一致

docker exec -it ydq1 bashdocker exec -it ydq2 bash

在ydq1容器的目录修改文件,然后去宿主机查看和ydq2容器查看

三、数据卷容器

1、数据卷容器作用

让两个容器实现数据共享

如果需要在容器之间共享一些数据,最简单的方法就是使用数据容器,数据卷容器是一个普通的容器,专门提供数据卷给其它容器挂载使用。

php ----》mysql之间想要通讯,通过socker

2、数据卷容器案例

创建数据卷容器

docker run -it --name test1 -v /data1 -v /data2 centos:7 bash
#创建容器并进入容器,并共享/data1 和/data2目录echo "这是data1下面的文件" > /data1/test.txt
echo "这是data2下面的文件" > /data2/TEST.txt
#容器内创建两个测试文件docker run -it --name test2 --volumes-from test1 centos:7 bash
#创建容器并进入,并且去读取test1容器共享的目录cat /data1/test.txt
cat /data2/TEST.txt
#查看测试数据是否同步(可相互传输)

四、容器互连(centos镜像)

  • 容器互连通过容器的名称在容器间建立一条专门的网络通信隧道,

  • 简单点说,就是会在源容器和接收容器之间建立一条隧道,接收容器可以看到源容器指定的信息。

dcoker run -itd --name test1 /bin/bash
docker run -itd --name test2 /bin.bash
#创建两个容器docker exec -it test1 /bin/bash
#进入到容器test1中
ping test2
#尝试ping test2,查看是否连通docker exec -it test2 /bin/bash
#进入到容器test2
yum -y install net-tools
#下载工具
ifconfig
#查看ip docker run -itd -P --name test3 --link test2:test2 centos:7 /bin/bash
#创建并运行就收容器取名为test3,使用--link选项指定链接容器,以实现容器的互连
//--link格式【容器名】:【链接的别名】docker exec -it test3 /bin/bash
#进入到容器test3
ping test2
#查看是否可ping通
yum -y install net-tools
#下载工具
ifconfig
#查看ip 
ping 172.17.0.2
#使用ip ping test2的ip

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

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

相关文章

C语言scanf()函数详解

目录 1. scanf()函数简介 1.1 函数原型 1.2 头文件 1.3 返回值 1.4 参数 2.格式说明符 3.输入格式控制 关于‘ * ’的例子 关于width域宽的例子 关于length长度修饰符的说明 4. 其他常见问题说明 4.1 scanf()函数连…

Diffusion扩散模型学习2:DDPM前向加噪过程torch实现

参考: https://arxiv.org/pdf/2006.11239.pdf ##论文 https://github.com/dtransposed/code_videos/blob/main/01_Diffusion_Models_Tutorial/Diffusion%20Model.ipynb ##code https://spaces.ac.cn/archives/9119 1、红色框: 前向过程论文公式推出可以从x0原图一步到最终噪声…

jetson AGC orin 配置pytorch和cuda使用、yolov8 TensorRt测试

文章目录 1、安装环境1.1、检查系统环境1.2、下载安装pytorch1.3、下载安装torchvision1.3、测试安装是否成功 2、yolov8测试2.1、官方python脚本测试2.2、tensorrt 模型转换2.3、tensorrt c 测试 1、安装环境 1.1、检查系统环境 检查系统环境、安装jetpack版本,执…

Linux操作系统基础(12):Linux的Shell解释器

1. Shell的介绍 在Linux中,Shell 是一种命令行解释器,它是用户与操作系统内核之间的接口,它负责解释用户输入的命令,并将其转换成系统调用或其他操作系统能够执行的指令。 Shell 提供了一种交互式的方式来与操作系统进行通信&am…

内核线程创建-kthread_create

文章参考Linux内核线程kernel thread详解 - 知乎 大概意思就是早期创建内核线程,是交由内核处理,由内核自己完成(感觉好像也不太对呢),创建一个内核线程比较麻烦,会导致内核阻塞。因此就诞生了工作队列以及…

Linux 目录结构及其说明

Linux 操作系统遵循一种标准的目录结构,称为 Filesystem Hierarchy Standard(文件系统层次结构标准),其定义了不同目录的用途和内容。 浅蓝色文字 /(根目录): /根目录是整个文件系统的起点&…

力扣2807.在链表中插入最大公约数

思路:遍历链表,对于每一个结点求出它与下一个结点的最大公约数并插入到俩个结点之间 代码: /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}…

【数据库系统概念】第7-14章集合

文章目录 第七章 数据库设计和E-R模型(重点!!!)~~7.1 设计过程概览(了解)~~7.1.1 设计阶段7.1.2 设计选择 7.2 实体-联系模型(重点掌握)7.2.1 实体集7.2.2 联系集联系集的…

BLE Mesh蓝牙组网技术详细解析之Model Layer模型层(八)

目录 一、什么是BLE Mesh Model Layer模型层? 二、SIG Model 2.1 模型概念 2.2 消息格式 2.3 开关模型 四、资料获取 一、什么是BLE Mesh Model Layer模型层? Models Layer的作用是定义了一些通用的或特定的模型,用于实现网络节点设备…

Beauty algorithm(四)眼影

一、skills 前瞻 略 二、目标区域定位 1、 眼影区域 1、眼部关键点 左侧:36,37,38,39,40,41 右侧:42,43,44,45,46,47 2、计算roi区域的w,h,center 目的调整mask的比列。 FaceRegion left_es, right_es; left_es.w = landmarks.at(39).x - landmarks.at(36).x; left_es.…

书生·浦语大模型实战营第一次课堂笔记

书生浦语大模型全链路开源体系。大模型是发展通用人工智能的重要途径,是人工通用人工智能的一个重要途径。书生浦语大模型覆盖轻量级、重量级、重量级的三种不同大小模型,可用于智能客服、个人助手等领域。还介绍了书生浦语大模型的性能在多个数据集上全面超过了相似量级或相近…

并发(3)

目录 11.Synchronized本质上是通过什么保证线程安全的? 12.Synchronized使得同时只有一个线程可以执行,性能比较差,有什么提升的方法? 13.Synchronized由什么样的缺陷?Java Lock是怎么弥补这些缺陷的? 1…

看了致远OA的表单设计后的思考

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: https://gitee.com/nbacheng/n…

通信原理期末复习——计算大题(一)

个人名片: 🦁作者简介:一名喜欢分享和记录学习的在校大学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755qq.com 🦉个人WeChat:V…

交换机04_远程连接

通过远程管理方式连接交换机 1、telnet简介 telnet 是应用层协议 基于传输层TCP协议的,默认端口:23 采用的是明文密码方式 不是很安全,一般用于内网管理。 2、ssh协议简介 ssh 是应用层的协议,基于传输层的TCP协议&#x…

打造清晰的日志管理策略:如何在 NestJS 中集成 winston 高级日志系统

前言 在Web应用程序的开发过程中,日志管理是不可或缺的一部分。日志可以帮助我们了解应用程序的运行状态,监控系统行为,以及在出现问题时快速定位和解决问题。 对于使用NestJS框架的项目来说,集成一个高效、可扩展的日志系统尤为…

面试官:说说接口和抽象类有什么区别

程序员的公众号:源1024,获取更多资料,无加密无套路! 最近整理了一波电子书籍资料,包含《Effective Java中文版 第2版》《深入JAVA虚拟机》,《重构改善既有代码设计》,《MySQL高性能-第3版》&…

Python中的cls语法

在Python中,cls 是一个用于指代类本身的约定性名称,通常用作类方法(class method)中的第一个参数。cls 类似于 self,它是对类的引用,而不是对实例的引用。cls 通常在类方法中用于访问类级别的属性和方法。举…

LLM Agent之数据分析领域的应用

数据分析:Data-Copilot paper: Data-Copilot: Bridging Billions of Data and Humans with Autonomous Workflow github: https://github.com/zwq2018/Data-Copilot 先介绍下浙大提出的已扩展的数据分析框架,支持多种金融数据类型的查询,数…

论文笔记 Understanding Electricity-Theft Behavior via Multi-Source Data

WWW 2020 oral 1 INTRO 1.1 背景 1.1.1 窃电 窃电(electricity theft)指用户为了逃避电费而进行非法操作的一种行为 常用的反窃电方法可分为两类: 基于硬件驱动的反窃电方法 ​​​​​​​电表开盖检测、集中器检测。。。。 硬件驱动的…