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

上海建设教育网站遵义市播州区建设厅网站

上海建设教育网站,遵义市播州区建设厅网站,网站上的动图都怎么做的,镇江金山网镇江新闻文章目录 定制镜像持久化需求实现 数据卷持久化数据卷简介数据卷的特性创建读写数据卷停止容器后的操作查看数据卷详情 创建只写数据卷查看数据卷详情 创建共享数据卷 Dockerfile持久化创建Dockerfile、构建和运行镜像查看宿主机端的目录 在容器层的 UnionFS#xff08;联合文… 文章目录 定制镜像持久化需求实现 数据卷持久化数据卷简介数据卷的特性创建读写数据卷停止容器后的操作查看数据卷详情 创建只写数据卷查看数据卷详情 创建共享数据卷 Dockerfile持久化创建Dockerfile、构建和运行镜像查看宿主机端的目录 在容器层的 UnionFS联合文件系统中对文件/目录的任何修改无论是手工修改还是容器在运行过程中的修改在该容器丢失或被删除后这些修改将全部丢失。即这些修改是无法保存下来的。若要保存下来这些修改通常有两种方式 定制镜像持久化将这个修改过的容器生成一个新的镜像让这些修改变为只读的镜像 数据卷持久化将这些修改通过数据卷同步到宿主机 定制镜像持久化 需求 DockerHub上拉取的centos:7镜像是没有vim工具的现在将centos:7镜像运行后下载vim工具再将这个容器打包为一个镜像centos7:vim。最后运行这个镜像可以看到这个镜像里面是有vim工具的。 实现 由于之前做过类似的需求在此我只把使用的命令展示出来。 # 运行centos:7镜像 docker run --name centos1 -it centos:7# 进入到centos7的shell后下载vim yum install -y vim# 下载完成之后输入exit退出centos7容器的shell环境。 # 并将该容器打包为一个镜像 docker commit -madd vim -abing centos1 centos7:vim# 打包完成后运行这个新镜像 docker run --name centos_vim -it centos7:vim# 查看vim的版本 vim --version数据卷持久化 数据卷简介 数据卷是宿主机中的一个特殊的文件/目录这个文件/目录与容器中的另一个文件/目录进行了直接关联在任何一端对文件/目录的写操作在另一端都会同时发生相应变化。在宿主中的这个文件/目录就称为数据卷而容器中的这个关联文件/目录则称为该数据卷在该容器中的挂载点。数据卷的设计目的就是为了实现数据持久化其完全独立于容器的生命周期属于宿主机文件系统但不属于 UnionFS。因此容器被删除时不会删除其挂载的数据卷。 数据卷的特性 数据卷具有如下明显特性 数据卷在容器启动时初始化如果容器启动后容器本身已经包含了数据那么这些数据会在容器启动后直接出现在数据卷中反之亦然。 可以对数据卷或挂载点中的内容直接修改修改后对方立即可看到。 数据卷会一直存在即使挂载数据卷的容器已经被删除。 数据卷可以在容器之间共享和重用。 创建读写数据卷 数据卷是在使用 docker run 启动容器时指定的其语法格式为 docker run -it -v /宿主机目录绝对路径:/容器内目录绝对路径 镜像名 注无论是宿主机中的数据卷还是容器中的挂载点如果指定的目录不存在那么 docker引擎都会自动创建。即使是多级目录不存在。 # 启动容器并创建数据卷 docker run --name centos1 -it -v /tmp/read_write_sour:/tmp/read_write_dest centos:7在容器的/tmp/read_write_dest目录下创建hello.log文件并写入数据。 看宿主机的/tmp/read_write_sour目录下是否有文件和数据然后向hello.log文件中添加数据。 看看容器的/tmp/read_write_dest目录下的hello.log文件是否有宿主机添加的数据。 停止容器后的操作 即使容器停止了在宿主机中只要修改了数据卷目录内容在重新启动容器后该修改过的数据仍会出现在容器中。因为容器是一个 UnionFS是一个存在于宿主机中的文件系统无论容器是否运行该 FS 都是存在的。 查看数据卷详情 通过 docker inspect [容器] 命令可以查看到当前容器中挂载点与数据卷的绑定关系其中Mounts表示挂载的意思。 这里给出了数据卷 Source 与挂载点 Destination 的绑定关系且容器对挂载点的默认操作权限是 RW 读写的。 创建只写数据卷 只读数据卷指的是容器对挂载点的操作权限是只读的。宿主机对数据卷的操作权限始终是读写的。有些情况下为了防止容器在运行过程中对文件产生修改就需要创建只读数据卷。创建只读数据卷的命令比之前的命令仅多了:ro具体语法如下 docker run -it -v /宿主机目录绝对路径:/容器内目录绝对路径:ro 镜像名 # 启动容器并创建只读数据卷 docker run --name centos2 -it -v /tmp/read_only_sour:/tmp/read_only_dest:ro centos:7在宿主机中的/tmp/read_only_sour目录下创建一个read-only.log文件并写入数据。 登录到容器中的/tmp/read_only_dest目录下看看reda-only.log文件的内容并尝试写入数据。 发现在容器中并不能向read-only.log写入数据说明在该目录下所有的文件对于容器来说都是只读的。 查看数据卷详情 通过 docker inspect centos2 命令可以查看到该数据卷的RW为false也就是该容器对数据卷有只读属性。 创建共享数据卷 当一个容器与另一个容器使用相同的数据卷时就称这两个容器实现了“数据卷共享”。而数据卷容器是实现数据卷共享的一种非常有效的方案。当一个容器 C 启动运行时创建并挂载了数据卷若其它容器也需要共享该容器 C 挂载的数据卷这些容器只需在 docker run 启动时通过 --volumes-from “容器C” 选项即可实现数据卷共享。此时容器 C 就称为数据卷容器。 现在搭建如下环境的各种容器以及数据卷。 # 首先创建一个使用读写数据卷的centos:3的容器并运行。 docker run --name centos3 -it -v /tmp/share_sour:/tmp/share_dest centos:7# 然后创建两个容器分别是tomcat1和tomcat2注意加上--volumes-from centos3的选项。 docker run --name tomcat1 --volumes-from centos3 -it tomcat:8.5.32 /bin/bash docker run --name tomcat2 --volumes-from centos3 -it tomcat:8.5.32 /bin/bash容器创建完成后首先宿主机在/tmp/share_sour目录下创建一个share.log的文件并写入数据。 第二步是centos3容器在/tmp/share_dest目录下读取数据并写入数据。 第三步是tomcat1容器在/tmp/share_dest目录下读取数据并写入数据。 第四步是tomcat2容器在/tmp/share_dest目录下读取数据并写入数据。 可以看到这三个容器和宿主机之间实现了数据共享。 Dockerfile持久化 Dockerfile 持久化其实就是通过使用 Dockerfile 的 VOLUME 指令指定数据卷方式实现的持久化。VOLUME 指令可以在容器中创建可以挂载数据卷的挂载点。其参数可以是字符串数组也可以是使用空格隔开的多个纯字符串。例如VOLUME [ “/tmp/demo”, “/etc/apache”] 或VOLUME /tmp/demo /etc/apache。 创建Dockerfile、构建和运行镜像 首先mkdir 一个目录例如 volume然后在其中新建 Dockerfile内容如下。这里指定/tmp/demo1 与/opt/demo2 为容器端的挂载点。 FROM centos:7 VOLUME /tmp/demo1 /opt/demo2 CMD /bin/bash然后就是构建和运行镜像命令如下 # 构建镜像 docker build -t volume .# 运行镜像 docker run --name vols -it volume查看宿主机端的目录 Ctrl P Q 退出容器后使用 docker inspect vols 查看当前容器中的挂载点目录到底与宿主机中的哪个数据卷对应。 Source是宿主机的目录Destination是容器的目录。向/var/lib/docker/volumes/0083b3d0a8c8ea137e2bf43a7e43ad1c68e5155415eb293489041bd6dadd50fc/_data 中写入数据看看容器的/opt/demo2下是否有数据。 这就是使用Dockerfile实现数据持久化的方式即使删除了容器和镜像数据也还在宿主机的/var/lib/docker/volumes/······/_data目录下。
http://www.pierceye.com/news/715366/

相关文章:

  • 浙江二建建设集团有限公司网站微信哪里可以做视频网站
  • wordpress阿里百秀5.2广州网站排名专业乐云seo
  • 网站建设 上海网站福州最好的网站建设公司
  • 兴力网站建设企业宣传网站在哪里做
  • 网站了建设pc官网 和手机网站
  • wordpress导航网站模板下载wordpress 关闭搜索引擎
  • 网站架构的优化wordpress企业主题免费下载
  • 分类信息网站手机版自学编程从哪学起
  • 网站目录 index.html京伦科技网站做的怎么样
  • 学做简单网站视频教程济源建设网站
  • 一个网站开发成本网店推广方案范文
  • 为什么要做seo盐城网站优化
  • 网站策划方案ppt站长查询域名
  • 网站开发需要哪些流程wordpress 添加widget
  • 在线报名网站建设汉字logo设计生成器
  • 移动网站和桌面网站区别烟台网站设计制作公司电话
  • 遵义网站建设网站定制wordpress主题多少钱
  • 外贸网站如何做推广是什么意思长沙制作公园仿竹护栏多少钱一米
  • seo网站有优化培训吗小程序商城开发华网天下优秀
  • 无锡品牌网站建设介绍网络营销是不是网络推广
  • 旅游网站建设论文题目商用图片的网站
  • 做网页专题 应该关注哪些网站网页版梦幻西游吸血鬼怎么过
  • gwt 网站开发深圳公司形象墙制作
  • 自己做的网站别人打不开大连网站建设方案维护
  • 卖高仿名牌手表网站两学一做网站飘窗
  • 企业网站备案资料样本购卡网页怎么制作
  • 什么网站能免费做简历ui设计师是什么意思
  • 天津网站推广公司哪家好深圳公司注册流程及资料
  • 家装网站建设哪家好点赣州市南康建设局网站
  • 北京建设网站制作我国外贸网站的建设