docker-容器数据管理
时间:2020-04-16
本文章向大家介绍docker-容器数据管理,主要包括docker-容器数据管理使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
一 容器内添加数据卷--直接用命令
1 不带权限挂载目录
docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名字
这两个目录不用提前建立,会自动生成,然后在宿主机或者容器里面对应的目录写入文件,看是否会自动同步(两者都可读可写)
例子:
docker run -itd -v /data/:/data centos bash
2 带权限的挂载目录
docker run -it -v /hostdir:/voludir:ro centos
容器里面没有写入权限,只有宿主机才可以写入
二 容器内添加数据卷--用dockerfile添加
1 用volume参数来添加数据卷,可以一次添加多个,我这里添加了两个
FROM centos
VOLUME ["/dataVolumeContainer1","/dataVolumeContainer2"]
CMD echo "finished,--------success1"
CMD /bin/bash
2 然后build,出现下面信息表示成功
docker build -f /mydocker/Dockerfile -t hnf/centos .
Sending build context to Docker daemon 2.048kB
Step 1/4 : FROM centos
---> 470671670cac
Step 2/4 : VOLUME ["/dataVolumeContainer1","/dataVolumeContainer2"]
---> [Warning] IPv4 forwarding is disabled. Networking will not work.
---> Running in 1174d3eb47d8
Removing intermediate container 1174d3eb47d8
---> c7014cc56c0a
Step 3/4 : CMD echo "finished,--------success1"
---> [Warning] IPv4 forwarding is disabled. Networking will not work.
---> Running in a5140e327aff
Removing intermediate container a5140e327aff
---> c32098c138eb
Step 4/4 : CMD /bin/bash
---> [Warning] IPv4 forwarding is disabled. Networking will not work.
---> Running in 2254626cd4a9
Removing intermediate container 2254626cd4a9
---> b9e86919260f
Successfully built b9e86919260f
Successfully tagged hnf/centos:latest
3 用新构建的镜像生成一个容器
docker run -it hnf/centos /bin/bash
去查看是否生成两个目录 dataVolumeContainer1 和dataVolumeContainer2
4 这两个目录对应的宿主机的目录在哪里,
通过docker inspect 2c38b4993770 查看
其中source是宿主机上面的目录,destination是容器里面的目录
三 容器里数据相互继承同步
1 先启动一个父容器
docker run -it --name dc01 hnf/centos 然后去dataVolumeContainer2 添加内容
2 然后启动dc02和dc03去继承dc01
docker run -it --name dc02 --volumes-from dc01 hnf/centos
docker run -it --name dc02 --volumes-from dc01 hnf/centos
然后你去dc02和dc03里面分别去新建文件,你会发现三个容器直接是相互同步的,
3 删除dc01看02和03数据是否还存在,答案是存在的
原文地址:https://www.cnblogs.com/huningfei/p/12713200.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 使用matplotlib绘制3D图表
- 微服务的用户认证与授权杂谈(下)
- Python 库安装问题-用pip安装pyHook3报错,原因及解决办法
- 微服务的用户认证与授权杂谈(上)
- Python 技术篇-win32、amd64结尾的whl库该选哪个,如何查看python平台支持
- Python 基础篇-pip卸载python库方法,pip命令大全
- Python 技术篇-pip安装的python库缓存位置查看方法,如何查看python库源码
- Redis持久化 - RDB和AOF
- Python 技术篇-pip只下载python库不安装方法,pip命令大全
- Python 技术篇-将项目打包成whl文件,whl包的制作方法
- PowerBI 超级粘性用户计算 - 原理与实现
- Chrome 技术篇-常用web调试手法:清除缓存并硬性重新加载
- 数据库之索引模块
- Python 爬虫篇-爬取web页面所有可用的链接实战演示,展示网页里所有可跳转的链接地址
- Python爬虫,微信公众号话题标签内容采集打印PDF输出