Docker容器数据卷
容器数据卷
什么是容器卷
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容器数据卷相关推荐
- Docker系列 五.Docker容器数据卷
五.Docker容器数据卷 环境&工具: 阿里云轻量级服务器.CentOS 7系统.FinalShell(其他连接客户端也可以) 是什么 docker的理念将运行的环境打包形成容器运行,运行可 ...
- Docker——Docker 容器数据卷(Volumes)
Docker 容器数据卷 容器数据卷(Volumes) 容器数据卷概述 使用数据卷 实现mysql数据同步 具名挂载和匿名挂载 匿名挂载 具名挂载 DockerFile里写Volumes配置 多个数据 ...
- docker容器数据卷基本操作
在实际运用中,如果使用docker部署应用的时候,有这么一种情况,需要有个位置可以同步docker容器上的数据到服务器上,更通俗点讲,我们需要在服务器上开启一个位置,这个位置可以连接docker容器中 ...
- Docker容器数据卷讲解
概述 为什么Docker需要容器数据卷技术:如果没有数据卷技术,比如一个由mysql镜像创建运行的容器,产生的数据就会保存在容器中,数据的生命周期与容器的生命周期一致,如果删除了该容器,相应的数据也会 ...
- Docker 学习之 Docker 容器数据卷
容器数据卷 什么是容器数据卷 docker 理念回顾 将应用和环境打包成一个镜像! 问题:数据?如果数据都在容器中,那么我们删除容器,数据就会丢失!需求:数据可以持久化! 容器之前可以有一个数据共享技 ...
- 【Docker学习笔记 五】深入理解Docker容器数据卷机制
前几篇Blog是对Docker的一个入门和初识,本篇Blog开始就详细学习下一个新的理论基础概念:Volume,也就是容器数据卷,听起来名字高大上,实际上就是一个宿主机的目录而已,为什么需要容器数据卷 ...
- Docker容器数据卷详解
文章目录 1. 数据卷介绍 2. 简单使用 3. MySQL容器建立数据卷同步数据 4. 常用命令 5. 具名挂载和匿名挂载 5.1 匿名挂载 5.2 具名挂载 6. Dockerfile中设置数据卷 ...
- Docker—容器数据卷
目录 1.什么是容器数据卷 2.数据卷的使用 3.实战MySQL同步数据 4.卷 常用命令 5.匿名挂载与具名挂载 5.1 匿名挂载 5.2 具名挂载 6.数据卷容器 1.什么是容器数据卷 Docke ...
- docker 容器数据卷
1.是什么 先来看看Docker的理念: 将运用与运行的环境打包形成容器运行 ,运行可以伴随着容器,但是我们对数据的要求希望是持久化的 容器之间希望有可能共享数据 Docker容器产生的数据,如果不通 ...
最新文章
- MATLAB 成绩排序
- 详解DNS正向解析实验(有图有实验)
- Entity framework WhereInExtension
- Kubernetes架构为什么是这样的?
- 无法载入增效工具_山东省 智能工具箱 智能工具管理 工具管理企业数字化管理...
- mac远程redis_Linux:使用Mac远程(局域网内)访问Ubuntu主机上的Redis服务
- 单片机检测220V交流电通断电路
- 最大连续和问题【四种不同的算法】
- Facebook全球宕机6小时!小扎损失60亿,15亿用户数据被出售
- Qt创建多线程的两种方法
- [转用 jsfl 扩展你的 flash
- Looper对文件描述符的监控与处理
- 奎享添加自己字体_如何添加字体?系统字体的两种方法添加方法
- Linux之unzip命令
- uni-app引用第三方插件(根据银行卡卡号查询银行类型和卡类型)
- python通过selenium爬取百度文库
- java中线程执行顺序控制
- 怎么弄自动滚动的图片 html,HTML网页上连续滚动图片的制作
- SQL入门SQL基本介绍
- 挖矿病毒 解决思路 xmr
热门文章
- 【深度强化学习】马尔可夫决策过程(Markov Decision Process, MDP)
- mysql8修改密码之后无法登陆_解决MySQL8.0安装第一次登陆修改密码时出现的问题...
- PPT转换成PDF转换软件教程
- 阿里JAVA开发手册(泰山版)
- java开发规范--编程规约--集合处理
- FPGA+海思Hi3559
- 数据结构与算法分析C++语言描述(第四版)图论学习记录
- 网络对抗作业 一------袁昊晨
- 通用流量录制回放工具 jvm-sandbox-repeater 尝鲜 (三)—— repeater plugin 开发
- gre计算机考试科目,GRE考试内容