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

网站设计排行榜全网优化哪家好

网站设计排行榜,全网优化哪家好,厦门网站建设方案开发,网站建设 武讯科技Docker 数据卷是一个可供容器使用的特殊目录#xff0c;它绕过了容器的文件系统#xff0c;直接将数据存储在宿主机上。通过数据卷#xff0c;可以实现数据的持久化、共享以及独立于容器生命周期的管理。 1.1 为什么要用数据卷 Docker 分层文件系统的特点 性能差#xff…Docker 数据卷是一个可供容器使用的特殊目录它绕过了容器的文件系统直接将数据存储在宿主机上。通过数据卷可以实现数据的持久化、共享以及独立于容器生命周期的管理。 1.1 为什么要用数据卷 Docker 分层文件系统的特点 性能差Docker 的分层文件系统Union File System在写入操作时会创建新的层导致性能下降。 生命周期与容器相同容器删除后其文件系统中的数据也会丢失。 Docker 数据卷的优势 绕开分层文件系统数据卷直接挂载到宿主机的文件系统中性能与宿主机磁盘相同。 数据持久化即使容器被删除或重新创建数据卷中的数据仍然存在不会丢失。 数据共享多个容器可以同时挂载同一个数据卷实现数据的共享和交互。 独立于容器生命周期数据卷的生命周期独立于容器不受容器的启动、停止和删除的影响。 Docker 提供了两种卷类型 Bind Mount将主机上的目录或文件挂载到容器中。 Docker Managed Volume由 Docker 自动管理的数据卷不需要指定挂载源。 1.2 Bind Mount 数据卷 特点 将主机上的目录或文件挂载到容器中。 使用直观高效易于理解。 使用 -v 选项指定路径格式为 host path:container path。 如果 -v 选项指定的路径不存在挂载时会自动创建。 注意事项 1. “如果挂载的路径在宿主机上不存在Docker 会自动创建该路径。” 这句话的意思是当你使用绑定挂载bind mount时如果宿主机上的目录路径不存在Docker 会自动创建这个目录。 举例说明 假设你运行以下命令 docker run -d --name my_container -v /haha/test:/container/path nginx:1.23 如果宿主机上 /haha/test 目录不存在Docker 会自动创建 /haha/test 目录。 这个行为是为了确保挂载操作能够成功执行因为挂载需要一个有效的宿主机路径。 2. “如果需要挂载的文件或目录在宿主机上不存在可能会导致容器启动失败。” 这句话的意思是如果你尝试挂载一个文件而这个文件在宿主机上不存在Docker 会报错并导致容器启动失败。 举例说明 假设你运行以下命令 docker run -d --name my_container -v /haha/test/file.txt:/container/file.txt nginx:1.23 如果宿主机上 /haha/test/file.txt 文件不存在Docker 会报错因为 Docker 不会自动创建文件。它只会自动创建目录而不会创建文件。 错误信息可能类似于 lstat /haha/test/file.txt: no such file or directory 这种情况下容器无法启动因为挂载操作失败了。 总结自动创建的是目录而不是文件 目录如果挂载的路径目录在宿主机上不存在Docker 会自动创建该目录。 文件如果挂载的文件在宿主机上不存在Docker 不会自动创建文件而是会报错并可能导致容器启动失败。 1.3 Docker Managed 数据卷 特点 不需要指定挂载源Docker 自动为容器创建数据卷目录。 默认创建的数据卷目录位于 /var/lib/docker/volumes 中。 如果挂载时指向容器内已有的目录原有数据会被复制到数据卷中。 示例 1. 不需要指定挂载源Docker 自动为容器创建数据卷目录 命名卷由 Docker 自动管理不需要指定宿主机上的路径。当你在运行容器时使用命名卷时Docker 会自动创建一个卷并将其挂载到容器内的指定路径。 举例说明 docker run -d --name my_container -v my_volume:/container/path nginx:1.23 在这个例子中my_volume 是一个命名卷的名称。 Docker 会自动在内部存储中创建一个名为 my_volume 的卷并将其挂载到容器内的 /container/path。 你不需要指定宿主机上的路径Docker 会管理这个卷的存储位置。 2. 默认创建的数据卷目录位于 /var/lib/docker/volumes 中 Docker 管理的命名卷默认存储在宿主机的 /var/lib/docker/volumes 目录下。每个命名卷都有一个独立的目录用于存储数据。 举例说明 假设你创建了一个名为 my_volume 的命名卷Docker 会在 /var/lib/docker/volumes 下创建一个对应的目录 /var/lib/docker/volumes/my_volume/_data _data 目录是实际存储卷数据的地方。 你可以通过以下命令查看所有命名卷 docker volume ls 如果需要查看卷的具体存储位置可以运行 docker volume inspect my_volume 3. 如果挂载时指向容器内已有的目录原有数据会被复制到数据卷中 当你将一个命名卷挂载到容器内的某个路径时如果该路径在容器中已经存在并且包含数据Docker 会将这些数据复制到命名卷中。这个过程称为“数据初始化”。 举例说明 假设你运行以下命令 docker run -d --name my_container -v my_volume:/container/existing/path nginx:1.23 如果 /container/existing/path 在容器中已经存在并且包含一些文件或目录Docker 会在第一次挂载时将这些内容复制到 my_volume 中。 之后无论何时重新挂载该卷容器内的 /container/existing/path 都会指向 my_volume并且数据会保持一致。 注意 这个数据复制的过程只会在第一次挂载时发生。 如果命名卷已经存在并且包含数据Docker 不会覆盖卷中的数据而是会直接使用卷中的数据。 清理未使用的 Docker 数据卷 [rootdocker ~]# docker volume prune 注意 在执行 docker volume prune 命令之前请确保你确实不再需要这些数据卷中的数据因为该操作是不可逆的一旦删除数据将无法恢复。 如果有重要的数据存储在数据卷中建议先进行备份或者确保数据已经被妥善保存到其他地方。 建立数据卷 [rootdocker ~]# docker volume create leevol1 [rootdocker ~]# ls -l /var/lib/docker/volumes/leevol1/_data/ 查看卷 [rootdocker ~]# docker volume ls DRIVER VOLUME NAME local leevol1 使用建立的数据卷 [rootdocker _data]# docker run -d --name web1 -p 80:80 -v leevol1:/usr/share/nginx/html nginx e76706848323d6c329c41c4140903f8cc441458daf1459d9016bd1ed0ab3360a rootdocker _data]# cd /var/lib/docker/volumes/leevol1/_data [rootdocker _data]# ls [rootdocker _data]# echo leevol1 index.html [rootdocker _data]# curl 172.25.254.100 leevol1 1.4 数据卷容器Data Volume Container 数据卷容器Data Volume Container是 Docker 中一种特殊的容器主要用于方便地在多个容器之间共享数据卷。 建立数据卷容器 [rootdocker ~]# docker run -d --name datavol \ -v /tmp/data1:/data1:rw \ -v /tmp/data2:/data2:ro \ -v /etc/resolv.conf:/etc/hosts busybox 使用数据卷容器 [rootdocker ~]# docker run -it --name test --rm --volumes-from datavol busybox / # ls bin data1 data2 dev etc home lib lib64 proc root sys tmp usr var / # cat /etc/resolv.conf # Generated by Docker Engine. # This file can be edited; Docker Engine will not make further changes once it # has been modified.nameserver 114.114.114.114 search timinglee.org# Based on host file: /etc/resolv.conf (legacy) # Overrides: [] / # touch data1/leefile1 / # touch /data2/leefile1 touch: /data2/leefile1: Read-only file system / # 数据卷容器的优势 方便共享通过数据卷容器可以在多个容器之间轻松共享数据卷。 简化管理数据卷容器可以集中管理数据卷便于维护和迁移。 1.5 Bind Mount 数据卷和 Docker Managed 数据卷的对比 相同点 两者都是基于宿主机文件系统中的某个路径。 不同点 特性Bind Mount 数据卷Docker Managed 数据卷路径指定必须指定宿主机路径不需要指定宿主机路径由 Docker 自动管理移植性依赖宿主机路径移植性较差独立于宿主机路径移植性较好管理方式需要手动管理宿主机路径由 Docker 自动管理支持 docker volume 命令性能与宿主机磁盘性能相同与宿主机磁盘性能相同适用场景适合需要直接访问宿主机文件的场景适合需要在多个容器之间共享数据的场景 1.6 备份与迁移数据卷 备份数据卷 # 建立容器并指定使用卷到要备份的容器 [rootdocker ~]# docker run --volumes-from datavol \ -v pwd:/backup busybox \ # 把当前目录挂载到容器中用于保存备份数据 tar zcf /backup/data1.tar.gz /data1 # 备份数据到本地 数据恢复 docker run -it --name test -v leevol1:/data1 -v pwd:/backup busybox /bin/sh -c tar zxf /backup/data1.tar.gz;/bin/sh / # ls backup data1 etc lib proc sys usr bin dev home lib64 root tmp var / # cd data1/ # 查看数据迁移情况 /data1 # ls index.html leefile1 注意事项 在备份和恢复数据卷时确保路径正确避免数据丢失。 如果数据卷较大备份和恢复过程可能需要较长时间请耐心等待。
http://www.dnsts.com.cn/news/212664.html

相关文章:

  • 企业单位网站怎么做九江网站建设公司
  • 辽宁自助网站建设价格佛山网站建设与设计公司
  • led灯网站模板龙华做企业网站
  • 桂林网站优化注意事项延边州住房和城乡建设局网站
  • 微网站开发报价单域名ip查询查网址
  • 网站开发最适合语言会计培训网站
  • 定西市城乡建设局网站西安网站建设推广公司
  • 兰州 网站网站建设开发报价明细
  • 服务器添加网站wordpress 开发飞猪接口
  • 做一个网站开发项目有哪些阶段wordpress分类展示插件
  • 佰联轴承网做的网站简单的html网页
  • 网站网络推广公司做网站需要哪些技术人才
  • 和网站用户体验相关的文章网站建设及推广服务的合同范本
  • 福建seo网站网页加速器手机版
  • 外贸网站推广有哪些科郑州网站建设
  • 河北建设工程信息网正规网站儿童编程网课平台哪个好
  • 网站关键词搜索wordpress 评论者邮箱
  • 东莞公司网站制作公司网页美工设计招聘网
  • 做自己的网站能赚钱吗wordpress 多站点 子目录
  • 做网站有费用吗中国建设报电子版在线阅读
  • 上海建设监理协会网站邢台市疾控中心
  • 前端网站开发框架个人网站搭建平台
  • 长安网站建设软件开发家装网站建设多少钱
  • vvic一起做网站企业网站建设规划的基本原则
  • 5g建设多少网站广州网站seo地址
  • 网站开发界面图标设计重庆那里做网站外包好
  • 陕西 网站备案网络营销外包推广策划方案
  • 网站设计师是什么部门视频app开发制作多少钱
  • 公司网站设计网络公司深圳网站设计兴田德润i优惠吗
  • vs建设网站佛山小程序开发制作