当前位置: 首页 > news >正文

docker 数据卷

Docker数据卷是Docker中的一个核心机制,用于实现容器间数据的持久化和共享。它是宿主机上的一个特殊目录,可以供一个或多个容器使用。容器删除时,不会删除其挂载的数据卷,也不会存在类似的垃圾机制对容器存在的数据卷进行处理。

容器数据卷的特性:

  1. 持久性:Docker数据卷是在宿主机上创建的目录或文件系统,它独立于容器的生命周期。这意味着即使容器停止或删除,数据卷中的数据仍然会被保留,从而实现了数据的持久化存储。

  2. 共享性:数据卷可以在不同的容器之间挂载和复用,使得多个容器能够访问到相同的数据源。这种特性在微服务架构下的多容器协作中尤为重要,因为不同的服务或组件可能需要共享某些数据。

  3. 高效性:数据卷直接映射到宿主机的文件系统上,因此相对于使用bind mounts(绑定挂载)或者通过容器内部文件系统读写数据,具有更好的I/O性能。

  4. 实时性:对数据卷的修改会立即生效,无论是在容器内部还是在本地目录中对数据卷进行修改,都能实时反映到其他地方。

1、容器数据卷的挂载

1.1 匿名目录挂载

1 创建容器的只给一个地址,会将容器里面的地址挂载在宿主机下/var/lib/docker/volumes路径下生成

# 创建容器,匿名挂载
docker run -ti -d --name my_nginx -p 8000:80 -v /home/wuzhibin  nginx
# 查看容器信息
docker inspect my_nginx 

2 查看容器数据卷挂载,源件为容器中的数据件,目标卷为宿主机上的数据卷

3 在宿主机上新建一个文件

4 在宿主机的文件映射到容器中

1.2 指定目录挂载

1 指定目录挂载相当于容器中的目录挂载到宿主机的指定目录下

# 创建容器
docker run -ti -d --name my_nginx -p 8000:80 -v /home/wuzhibin:/home/wuzhibin  nginx
# 查看容器信息
docker inspect my_nginx 

2 查看宿主机的目录下的文件大小

3 查看容器中挂载卷的文件大小

两个卷的文件是一致的,不管哪个卷中的文件变化都会同步更新的

1.3 DockerFile 添加数据卷

一般我们构建镜像的都是通过DockerFile文件来构建镜像启动容器的,不会通过命令单独对容器进行数据卷的挂载的, 但是请注意Dockerfile 不能直接指定数据卷映射或挂载, 也就是说Dockfile的挂载只能是匿名挂载

# 数据卷挂载的Dockersfile命令
VOLUME ["/home/wuzhibin","/home/wuzhibin"]

完整的Dockerfile文件

# Dockerfile
#基准镜像
FROM nginx:latest
#作者信息
MAINTAINER "wuzhibin"
#工作目录
WORKDIR /usr/local/src/ 
#设置容器中要挂在到宿主机的目录
VOLUME ["/home/wuzhibin/nginx","/usr/local/nginx/html"]
CMD ["nginx", "-g","daemon off;"]

1 编译nginx镜像

# 新建的Dockerfile文件
vim Dokerfile
# 复制上面内容退出
# 编译docker镜像
docker build . -t my_nginx

2 查看编译的镜像

docker images

3 启动容器

docker run -ti -d --name my_nginx my_nginx

4 查看数据卷挂载情况

docker inspect my_nginx

2、数据卷容器

将一个容器的数据共享给一个挂载该容器的容器,就是数据卷容器。这个容器充当一个数据卷,其他挂载这个数据卷容器的容器之间数据共享。

1 运行数据卷容器

docker run --name=data_contain -v /home/wuzhibin:/home/wuzhibin -ti -d  nginx

2、启动需要挂载数据卷的容器1和容器2

docker run -it -d  --name=my_contain1 --volumes-from data_contain nginx
docker run -it -d  --name=my_contain2 --volumes-from data_contain nginx

3、数据卷中添加数据,其他容器中会同步

docker exec -ti data_contain bash
cd /hmoe/wuzhibin
echo hello world > 1.txt

4 查看其他容器的数据

其他的容器中都存在数据卷容器的文件

上一章:docker 的网络管理-CSDN博客

下一章:DockerFile-CSDN博客

相关文章:

docker 数据卷

Docker数据卷是Docker中的一个核心机制,用于实现容器间数据的持久化和共享。它是宿主机上的一个特殊目录,可以供一个或多个容器使用。容器删除时,不会删除其挂载的数据卷,也不会存在类似的垃圾机制对容器存在的数据卷进行处理。 …...

【开发工具】Ubuntu复制CSDN代码多余符号的去除

在Ubuntu中使用CSDN复制的代码时,可能会出现\u200的符号,这个符号会影响代码的编译和运行,因此需要找到一种快速删除这种符号的方法。 通过搜索找到了一种替换为空的删除方式,笔者编写了一个适用于Rust的shell脚本,需要…...

【微服务篇】深入理解微服务注册中心与配置中心

注册中心 设计一个注册中心时,需要关注多个关键方面,以确保其稳定性、可靠性、性能和可扩展性。以下是一些重要的考虑因素: 服务发现机制:注册中心的核心功能是允许服务相互发现。这意味着当一个服务实例启动时,它需…...

数据库安全(redis、couchdb、h2database)CVE复现

redis服务默认端口:6379;我们可以通过端口扫描来判断是否存在该服务。 Redis 是一套开源的使用ANSI C 编写、支持网络、可基于内存亦可持久化的日志型、键值存储数据库,并提供多种语言的API。 Redis 如果在没有开启认证的情况下,…...

道可云元宇宙每日资讯|元宇宙标准化工作组成立大会召开

道可云元宇宙每日简报(2024年3月28日)讯,今日元宇宙新鲜事有: 元宇宙标准化工作组成立大会召开 3月21日,元宇宙标准化工作组成立大会暨第一次全体委员会议在浙江省丽水市青田县召开。元宇宙标准化工作组的建立&#…...

20240322-2-Catboost面试题

Catboost面试题 1. 简单介绍Catboost? CatBoost是一种以对称决策树 为基学习器的GBDT框架,主要为例合理地处理类别型特征,CatBoost是由Categorical和Boosting组成。CatBoost还解决了梯度偏差以及预测偏移的问题,从而减少过拟合的…...

【PSINS工具箱】EKF与UKF滤波

描述 对工具箱SINS/GPS,153例程的修改,将EKF和UKF放在一个文件里面,一次运行可以得到两个滤波的结果。 片段 运行截图 程序完整源代码 在有工具箱的情况下,直接运行此代码,即可得到结果 % 基于PSINS工具箱的IMU数据…...

UOS部署oceanbase

安装docker环境。 镜像可在本文档中下载4.2版本的oceanbase 加载镜像 docker load -i oceanbase_4212_x86_64_20231214.tar.gz注意事项 确保挂载点大于200GLOCAL_IP 部署服务器ipNIC_NAME 部署服务器对应的网络OBCLUSTER_IP_LIST 部署服务器ip 启动容器 sudo docker run …...

Hive查询转换与Hadoop生态系统引擎与优势

目录 摘要一、Hive是什么二、HDFS是什么三、Hive与HDFS的关系四、什么是HiveQL五、什么是mapreduce六、Hive如何将查询转为mapreduce任务七、Hadoop生态系统中的高性能引擎八、使用Hadoop的优点 摘要 Hadoop生态系统中包含了多个关键组件,如Hive、HDFS、MapReduce等…...

WPF上使用MaterialDesign框架---下载与配置

一、介绍: Material Design语言的一些重要功能包括 系统字体Roboto的升级版本 ,同时颜色更鲜艳,动画效果更突出。杜拉特还简要谈到了新框架的一些变化。谷歌的想法是让谷歌平台上的开发者掌握这个新框架,从而让所有应用就有统一的…...

鸿蒙ARKTS--简易的购物网站

目录 一、media 二、string.json文件 三、pages 3.1 登录页面:gouwuPage.ets 3.2 PageResource.ets 3.3 商品页面:shangpinPage.ets 3.4 我的页面:wodePage.ets 3.5 注册页面:zhucePage.ets 3. 购物网站主页面&#xff…...

LabVIEW转动设备故障诊断系统

LabVIEW转动设备故障诊断系统 随着工业自动化技术的不断进步,转动设备在电力、化工、船舶等多个行业中扮演着越来越重要的角色。然而,这些设备在长期运行过程中难免会出现故障,如果不能及时诊断和处理,将会导致生产效率下降&…...

uniapp h5 touch事件踩坑记录

场景:悬浮球功能 当我给悬浮球设置了 position: fixed; 然后监听悬浮球的touch事件,从事件对象中拿到clientY和clientX赋值给悬浮球的left和top属性。当直接赋值后效果应该是这样子: 注意鼠标相对悬浮球的位置,应该就是左上角&a…...

webpack.prod.js(webpack生产环境配置文件)

生产环境:只打包不运行本地服务器 对于在config目录下的webpack.prod.js 1.在根目录下运行 npx webpack --config ./config/webpack.prod.js 2.在package.json文件中配置 "build":"npx webpack --config ./config/webpack.prod.js" const …...

利用python做模拟数据(测试数据),连接数据库和服务器接口,涉及雪花id服务

import datetime import jsonimport pymysql import requests import snowflake.client from faker import Faker#cmd启动snowflake服务: #snowflake_start_server --addresslocalhost --port8910 --dc1 --worker1 def create_testers():# 创建一个中文Faker实例fak…...

大模型日报2024-03-30

大模型资讯 提升大型语言模型推理速度:高效部署技术 摘要: 随着GPT-4、LLaMA和PaLM等大型语言模型(LLMs)不断拓展自然语言处理的边界,研究人员正在探索加速这些模型推理过程的技术。这些技术旨在提高模型部署的效率,以…...

【ARM 嵌入式 C 入门及渐进 14 -- C 代码中取余与取模的使用介绍】

请阅读【嵌入式开发学习必备专栏 】 文章目录 背景示例 背景 有些文件每行是固定的字符个数,那么如果任意给个字符的序号,怎么通过C 代码获取该字符所在的行呢? 处理这个问题就要用到 C 语言中的取余和取模运算了。 示例 在 C 语言中&…...

C++入门知识详细讲解

C入门知识详细讲解 1. C简介1.1 什么是C1.2 C的发展史1.3. C的重要性1.3.1 语言的使用广泛度1.3.2 在工作领域 2. C基本语法知识2.1. C关键字(C98)2.2. 命名空间2.2 命名空间使用2.2 命名空间使用 2.3. C输入&输出2.4. 缺省参数2.4.1 缺省参数概念2.4.2 缺省参数分类 2.5. …...

pytorch中的torch.hub.load():以vggish为例

pytorch提供了torch.hub.load()函数加载模型,该方法可以从网上直接下载模型或是从本地加载模型。官方文档 torch.hub.load(repo_or_dir, model, *args, sourcegithub, trust_repoNone, force_reloadFalse, verboseTrue, skip_validationFalse, **kwargs)参数说明&a…...

mysql 用户管理-权限管理

学习了用户管理,再学习下权限管理。 3,权限管理 权限管理主要是对登录到MySQL的用户进行权限验证。所有用户的权限都存储在MySQL的权限表中,不合理的权限规划会给MySQL服务器带来安全隐患。数据库管理员要对所有用户的权限进行合理规…...

RabbitMQ--04--发布订阅模式 (fanout)-案例

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 发布订阅模式 (fanout)---案例前言RabbitListener和RabbitHandler的使用 1.通过Spring官网快速创建一个RabbitMQ的生产者项目2.导入项目后在application.yml文件中配…...

基于java+SpringBoot+Vue的网上书城管理系统设计与实现

基于javaSpringBootVue的网上书城管理系统设计与实现 开发语言: Java 数据库: MySQL技术: SpringBoot MyBatis工具: IDEA/Eclipse、Navicat、Maven 系统展示 前台展示 后台展示 系统简介 整体功能包含: 网上书城管理系统是一个基于互联网的在线购书平台&#…...

PCL点云处理之M估计样本一致性(MSAC)平面拟合(二百三十六)

PCL点云处理之M估计样本一致性(MSAC)平面拟合(二百三十五六) 一、算法介绍二、使用步骤1.代码2.效果一、算法介绍 写论文当然用RANSAC的优化变种算法MSAC啊,RANSAC太土太LOW了哈哈 MSAC算法(M-estimator Sample Consensus)是RANSAC(Random Sample Consensus)的一种…...

通过WSL在阿里云上部署Vue项目

参考: 阿里云上搭建网站-CSDN博客 云服务器重装 关闭当前运行实例 更换操作系统,还有其他的进入方式。 选择ubuntu系统(和WSL使用相同的系统)。 设置用户和密码。发送短信验证码。 新系统更新。秒速干净的新系统设置完成。 这…...

240330-大模型资源-使用教程-部署方式-部分笔记

A. 大模型资源 Models - Hugging FaceHF-Mirror - Huggingface 镜像站模型库首页 魔搭社区 B. 使用教程 HuggingFace HuggingFace 10分钟快速入门(一),利用Transformers,Pipeline探索AI。_哔哩哔哩_bilibiliHuggingFace快速入…...

uni-app 富文本编辑器

<template><view class"container"><view>标题&#xff1a;<u-input placeholder"请输入标题"></u-input></view><view class"page-body"><view classwrapper><view classtoolbar tap"…...

3D汽车模型线上三维互动展示提供视觉盛宴

VR全景虚拟看车软件正在引领汽车展览行业迈向一个全新的时代&#xff0c;它不仅颠覆了传统展览的局限&#xff0c;还为参展者提供了前所未有的高效、便捷和互动体验。借助于尖端的vr虚拟现实技术、逼真的web3d开发、先进的云计算能力以及强大的大数据处理&#xff0c;这一在线展…...

如何在Flutter中进行网络请求?

Hello&#xff01;大家好&#xff0c;我是咕噜铁蛋&#xff0c;你们的好朋友&#xff01;今天&#xff0c;我想和大家分享一下在Flutter中如何进行网络请求。Flutter作为一个跨平台的开发框架&#xff0c;网络请求是其实现数据交互的重要一环。下面&#xff0c;我将详细介绍几种…...

node:ReferenceError: XMLHttpRequest is not defined

node&#xff1a;ReferenceError: XMLHttpRequest is not defined 1 前言 node执行如下代码&#xff1a; new XMLHttpRequest()报错提示&#xff1a;ReferenceError: XMLHttpRequest is not defined 2 解决 2.1 可能原因是没有安装xmlhttprequest npm install xmlhttpreq…...

PHP定时任务框架taskPHP3.0的学习记录1(TaskPHP、执行任务类的实操代码实例)

TaskPHP是一个基于PHP的定时任务框架&#xff0c;它提供了一个简单、灵活且易于使用的解决方案&#xff0c;用于在PHP环境中执行定时任务。下面是对TaskPHP框架的简要介绍&#xff1a; 简单易用&#xff1a;TaskPHP的设计目标是让定时任务的创建和管理变得简单。通过简单的配置…...

公司销售网站怎么做/长沙网站推广seo

版权声明&#xff1a;本文为博主原创文章&#xff0c;遵循 CC 4.0 BY-SA 版权协议&#xff0c;转载请附上原文出处链接和本声明。 本文链接&#xff1a;https://blog.csdn.net/wo541075754/article/details/81734770 在互联网中的每一刻&#xff0c;你可能都在享受着Base64带来…...

梅陇做网站/百度热搜seo

这次写一下精灵创建的几种类型: 一、通过文件创建&#xff1a; 在原有的基础上加入例如以下代码&#xff1a; //一、通过文件创建精灵 CCSprite *bg CCSprite::create("map.png"); CCSize winSize CCDirector::sharedDirector()->getWinSize(); //得到屏幕的尺寸…...

游戏咨询网站建设目标是什么/百度竞价推广是什么

在*NIX系统遭受***后&#xff0c;确定损失及***者的***源地址相当重要。虽然在大多数***者懂得使用曾被他们攻陷的机器作为跳板来***你的服务器可在他们发动正式***前所做的目标信息收集工作&#xff08;试探性扫描&#xff09;常常是从他们的工作机开始的&#xff0c;本篇介绍…...

wordpress设置logo和公司名/深圳全网营销方案

Word是一款文字处理器应用程序软件&#xff0c;我们大家在工作中会经常使用word来编辑一些文章内容信息&#xff0c;进行排版制作。我们在使用word文档时&#xff0c;进入编辑内容它所默认的纸张方向都是竖着的&#xff0c;我们如果想要修改纸张的方向应该如何操作呢&#xff1…...

杭州的做网站公司/seo怎么学

我正在尝试创建自定义单选按钮,如下图所示.我编写了代码,能够实现正确的样式,但无法在单选按钮之前显示标签..lengend-action-buttons {float: left;margin-left: 10px;margin-top: 10px;}label {font-weight: normal;font-size: 14px;Font-Family: Metric-Regular;Color: #666…...

视频的网站自助建站/广州做seo的公司

part 1--入门&#xff1a;1. xcode 版本下载 以及 iphone sdk 下载&#xff1a;最新版本在此下载&#xff1a;http://developer.apple.com/devcenter/ios/index.action其他版本请看http://connect.apple.com/cgi-bin ... 1.0.1.1.0.3.3.3.3.12. 入门教程&#xff1a;http://www…...