17-Docker的数据持久化介绍
17-Docker的数据持久化介绍
回顾容器与镜像
容器是在镜像之上创建的一层运行时层,这一层是可以读写的,我们能够在容器内添加数据,读取数据。
也就是说我们在创建容器的时候,我们能够在容器内创建文件,安装软件等等,但是如果我们把这个容器停止并删除了,那在这个容器内的所有操作都会没有,镜像是不会发生变化的,除非我们重新提交了一个镜像。
持久化的产生
假如我们想创建一个数据库容器,比如mysql容器,那么这个数据库是要写一些数据文件在本地文件内的,如果数据库容器被删除了,数据库存储的数据也就不见了,这是很不合理的。
其实docker是提供了数据持久化的机制。
这个机制就是 Volume,默认情况下容器所产生的数据是写到容器这一层的,这一层会随着容器的销毁而销毁。
但是我们可以通 Volume 挂载到本地或者一个地方存储,那么数据和这个容器就隔离开了,也就是说容器销毁并不会销毁 Volume 的数据。
持久化数据的方案
- 基于本地文件系统的Volume。 可以在执行
Docker create
或者Docker run
时,通过-v
参数将主机的目录作为容器的数据卷。这部分功能便是基于本地文件系统的Volume管理。 - 基于plugin的Volume。支持第三方的存储方案,比如 NAS,aws。
aws是亚马逊云,NAS 是远程网络网盘
Volume的类型
- 受管理的data Volume,由docker后台自动创建。就是加不加
-v
参数,docker后台都会创建一个 Volume。 - 绑定挂载的Volume,具体挂载位置可以由用户指定。通过
-v
参数指定挂载的位置。
17-Docker的数据持久化介绍相关推荐
- Docker 的数据持久化项目实战
文章目录 官网 概述 初探Mysql镜像容器的数据存储 镜像准备:拉取mysql镜像 docker pull mysql 启动Mysql镜像 登录Mysql镜像容器 登录mysql 容器数据存储路径查 ...
- Docker - 卷 - 数据持久化
目录 知识点1:镜像本质就是一个文件 docker save -o nginx.tar nginx 将docker容器里的镜像导出 docker load docker export -o my_n ...
- Cloud ❀ Docker的数据卷介绍
文章目录 1.数据卷概念 2.数据卷的使用 (1)直接命令添加 (2)DockerFile添加 3.数据卷容器 (1)数据卷容器是什么 (2)vloumes-from的使用 1.数据卷概念 Docke ...
- Docker自学纪实(三)Docker容器数据持久化
谈起数据卷 我一直觉得是个枯燥无聊的话题 但是通过今天的实操和阅读 我发现其实并不是 其实就像走夜路 没有光明,第一次都是恐惧 但是如果走的次数多了 或者静下心来去克制恐惧 也许就会驾轻就熟或者等到黎 ...
- docker容器运行mysql持久化_docker容器实现数据持久化的两种方式及其区别
前言 这篇博文是我对docker实现数据持久化几种方式的特征进行一个总结. 在docker中,它的存储文件系统是在dockerhost上原有的xfs或ext4架设了一层文件系统:overlay2(将此 ...
- scrapy框架对接seleniumpipeline数据持久化
文章目录 1.**scrapy对接selenium** 2.pipeline数据持久化 1.scrapy对接selenium 动态数据加载: 1.ajax: ①url接口存在规律, 可以自行构建url ...
- docker之数据卷管理
目录 1.docker使用 2.优化 在docker之网络访问中,通过启动了nginx服务进行了访问,只展示了nginx的首页信息,如果想访问我们自己的代码如何操作呢,这就需要使用到数据卷的知识了.在 ...
- docker mysql8.0挂载_Docker安装MySQL 8.0.17 并挂载数据及配置文件,修改时区
一般来说是不需要手动指定MySQL挂载卷,因为mysql会自动挂载, 通过 dokcer inspect 你的容器名称 可以查看容器已挂载的路径 /var/lib/docker/volumes/855 ...
- docker helowin 迁移_docker-compose 安装 oracle_11g_r2 并实现数据持久化
1,采用 docker-compose 安装 1,创建相关文件 mkdir /usr/local/docker cd /usr/local/docker mkdir oracle cd oracle ...
最新文章
- 冷知识 —— 成语与典故
- 认识StringBuffer类
- 为什么阿里巴巴Java开发手册中不允许用Executors去创建线程池?
- OpenCv cv::Mat 转 IplImage 函数
- mkdir: Permission denied: user=root, access=WRITE
- mysql dump hbase_导出mysqldump数据
- linux如何安装阵列卡驱动程序,Linux安装阵列卡驱动及档.doc
- Unity3D 智能巡逻兵
- 发送网页内容到onenote_如何直接在网页上做笔记并保存到 Onenote?
- 汽车IC TPS7A6633QDGNRQ1应用 低压降线性稳压器
- Ubuntu常用软件安装,持续更新中。。。
- 告别“浮云” 享用云计算服务优势
- AB(罗克韦尔)PLC如何通过程序直接与外插SD卡进行数据读写?
- 自动化JS效果---第五集--永洪BI
- 计算机安装操作步骤,重新安装计算机系统的步骤,最简单,最安全的操作!
- 关于币圈炒币 你必须要知道的风险
- 小说中场景的功能_小说写作 | 如何做好小说中的场景描写?
- 逻辑漏洞之越权、支付漏洞
- easyUI datagrid 控制列隐藏和显示
- 英雄联盟轮播图自动轮播
热门文章
- 服务器状态down,HAProxy的状态显示DOWN
- fmc接口定义_STM32接口FSMC/FMC难点详解
- 猫眼java开发暑期实习_校招|猫眼 Android日常实习一面面经
- C语言 extern - C语言零基础入门教程
- 多线程:三大不安全案例
- php程序里的configini_程序员手册 修改php.ini的几种方法
- tmc4361 闭环_TMC4361A-LA
- python bytes转换为string_Python3 中 bytes 和 string 之间的互相转换
- java se入门_java SE 入门之运算符(第三篇)
- java对xml解析_Java中对xml的解析