容器数据卷

什么是容器卷

docker是要将应用和环境打包成一个镜像

这样,数据就不应该在容器中,否则容器删除,数据就会丢失,这就是删库跑路

故容器之间要有一个数据共享技术

在Docker容器中产生的数据,同步到本地,这就是卷技术

本质上是一个目录挂载,将容器内的目录挂载到虚拟机上

目的:容器的持久化和同步操作

容器间可以数据共享

使用数据卷

方式一:直接使用命令来挂载

docker run -it -v -p
# -it 交互式进入
# -v volume卷技术
# -p 主机端口


新开一个窗口

docker inspect 容器id



测试

容器停止后,修改主机文件,再启动容器的时候,数据同样改变

双向同步

实战安装mysql

MySQL的数据持久化命令

docker search mysql# 拉取
docker pull mysql:5.7# 挂载
docker run -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql5.7-d 后台运行
-p 端口映射
-v 卷挂载
-e 环境配置 安装启动mysql需要配置密码
--name 容器名字


链接测试:打开SQLyog


点 测试链接

点 链接

具名和匿名挂载


DockerFile使用来构建docker镜像的文件

kas:
没有安装吧?

kas:
安装一下就可以了

py9001021曾叙坚:
centos 默认使用vi写内容,vim需要下载

py9001021曾叙坚:
是的,需要下载vim才能使用

YF:
配置可以改下,字体就很炫酷了

都建民:
用vi 试试

都建民:
你没有安装vim

都建民:
yum install vim

都建民:
试试这个命令

yum install vim # 编辑文件的,没有装一下


安装完之后就可以运行这个命令了

# 镜像是一层一层的,脚本是一行一行的
# 指令都是大写的
# 这里的每个命令可以理解为镜像的一层FROM centosVOLUME ["volume01","volume02"] # 再创建镜像的时候就挂载出来CMD echo "---end---"
CMD /bin/bash


想保存并退出

Wesley.:
shift 加 冒号

cat dockerfile1docker build -f dockerfile1 -t padaxing/centos:1.0 .  # 最后的点很重要 镜像名不能有/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZDrQc9TA-1653492528865)(Docker.assets/image-20200618212936481.png)]

docker images

启动生成的镜像

在容器内部创建一个文件

查看Mounts,Source对应容器外目录,匿名挂载卷

测试一下,在container volume01下生成文件

在主机挂载路径下,也同样生成

多个容器数据共享

看一下有啥images

启动docker01,用之前建的padaxing/centos 1.0 镜像

docker run -it --name docker01 padaxing/centos:1.0 # 1.0必须写

当前这个ctrl+p+q不停止退出

依次启动docker02、docker03

docker run -it --name docker02 --volumes-from docker01 padaxing/centos:1.0

docker02继承docker01的volumes

可以验证,在docker01下加一个数据,在docker02下也会出现

创建docker03,同样继承docker01

docker run -it --name docker03 --volumes-from docker01 padaxing/centos:1.0

在docker03的volume01下建立文件,在docker01的volume01下同样也有

即通过–volumes-from 可以实现不同容器间的数据共享

删除docker01,数据还在

docker rm -f

可以看到,删除docker01,进入docker02,数据依然在

结论:

容器之间配置信息的传递,数据卷容器的生命周期一直持续到没有容器使用位置

但是如果持久化到了本地,即使所有容器删除了,本地数据是不会删除的

Docker容器数据卷相关推荐

  1. Docker系列 五.Docker容器数据卷

    五.Docker容器数据卷 环境&工具: 阿里云轻量级服务器.CentOS 7系统.FinalShell(其他连接客户端也可以) 是什么 docker的理念将运行的环境打包形成容器运行,运行可 ...

  2. Docker——Docker 容器数据卷(Volumes)

    Docker 容器数据卷 容器数据卷(Volumes) 容器数据卷概述 使用数据卷 实现mysql数据同步 具名挂载和匿名挂载 匿名挂载 具名挂载 DockerFile里写Volumes配置 多个数据 ...

  3. docker容器数据卷基本操作

    在实际运用中,如果使用docker部署应用的时候,有这么一种情况,需要有个位置可以同步docker容器上的数据到服务器上,更通俗点讲,我们需要在服务器上开启一个位置,这个位置可以连接docker容器中 ...

  4. Docker容器数据卷讲解

    概述 为什么Docker需要容器数据卷技术:如果没有数据卷技术,比如一个由mysql镜像创建运行的容器,产生的数据就会保存在容器中,数据的生命周期与容器的生命周期一致,如果删除了该容器,相应的数据也会 ...

  5. Docker 学习之 Docker 容器数据卷

    容器数据卷 什么是容器数据卷 docker 理念回顾 将应用和环境打包成一个镜像! 问题:数据?如果数据都在容器中,那么我们删除容器,数据就会丢失!需求:数据可以持久化! 容器之前可以有一个数据共享技 ...

  6. 【Docker学习笔记 五】深入理解Docker容器数据卷机制

    前几篇Blog是对Docker的一个入门和初识,本篇Blog开始就详细学习下一个新的理论基础概念:Volume,也就是容器数据卷,听起来名字高大上,实际上就是一个宿主机的目录而已,为什么需要容器数据卷 ...

  7. Docker容器数据卷详解

    文章目录 1. 数据卷介绍 2. 简单使用 3. MySQL容器建立数据卷同步数据 4. 常用命令 5. 具名挂载和匿名挂载 5.1 匿名挂载 5.2 具名挂载 6. Dockerfile中设置数据卷 ...

  8. Docker—容器数据卷

    目录 1.什么是容器数据卷 2.数据卷的使用 3.实战MySQL同步数据 4.卷 常用命令 5.匿名挂载与具名挂载 5.1 匿名挂载 5.2 具名挂载 6.数据卷容器 1.什么是容器数据卷 Docke ...

  9. docker 容器数据卷

    1.是什么 先来看看Docker的理念: 将运用与运行的环境打包形成容器运行 ,运行可以伴随着容器,但是我们对数据的要求希望是持久化的 容器之间希望有可能共享数据 Docker容器产生的数据,如果不通 ...

最新文章

  1. MATLAB 成绩排序
  2. 详解DNS正向解析实验(有图有实验)
  3. Entity framework WhereInExtension
  4. Kubernetes架构为什么是这样的?
  5. 无法载入增效工具_山东省 智能工具箱 智能工具管理 工具管理企业数字化管理...
  6. mac远程redis_Linux:使用Mac远程(局域网内)访问Ubuntu主机上的Redis服务
  7. 单片机检测220V交流电通断电路
  8. 最大连续和问题【四种不同的算法】
  9. Facebook全球宕机6小时!小扎损失60亿,15亿用户数据被出售
  10. Qt创建多线程的两种方法
  11. [转用 jsfl 扩展你的 flash
  12. Looper对文件描述符的监控与处理
  13. 奎享添加自己字体_如何添加字体?系统字体的两种方法添加方法
  14. Linux之unzip命令
  15. uni-app引用第三方插件(根据银行卡卡号查询银行类型和卡类型)
  16. python通过selenium爬取百度文库
  17. java中线程执行顺序控制
  18. 怎么弄自动滚动的图片 html,HTML网页上连续滚动图片的制作
  19. SQL入门SQL基本介绍
  20. 挖矿病毒 解决思路 xmr

热门文章

  1. 【深度强化学习】马尔可夫决策过程(Markov Decision Process, MDP)
  2. mysql8修改密码之后无法登陆_解决MySQL8.0安装第一次登陆修改密码时出现的问题...
  3. PPT转换成PDF转换软件教程
  4. 阿里JAVA开发手册(泰山版)
  5. java开发规范--编程规约--集合处理
  6. FPGA+海思Hi3559
  7. 数据结构与算法分析C++语言描述(第四版)图论学习记录
  8. 网络对抗作业 一------袁昊晨
  9. 通用流量录制回放工具 jvm-sandbox-repeater 尝鲜 (三)—— repeater plugin 开发
  10. gre计算机考试科目,GRE考试内容