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

从0开始学docker (每日更新 24-11-11)

Docker存储驱动及其选择

概述

理想情况下,只有很少的数据需要写入容器的可写层,更多的情形是用 Docker卷来写入数据。但是,有些工作负荷要求写入容器的可写层,这就需要使用存储驱动。存储驱动控制镜像和容器在 Docker主机上的存储和管理方式,Doker通过插件机制支持以下几种不同的存储驱动:

1.Docker存储驱动与联合文件系统

联合文件系统(Union file systems 或 UnionFS)是一种为 Linux、FreeBSD和 NetBSD 操作系统设计的,将其他文件系统合并到一个联合挂载点的文件系统,它通过创建层进行操作,非常轻巧和快速。Docker引擎使用它为容器提供内部存储。Docker引擎可以使用联合文件系统的多种变体,包括AUFS、OverlayFS、Btrfs、BFS 和 DeviceMapper等。

这些联合文件系统实际上是由存储驱动实现的,相应的存储驱动有 aufs、overlay、overlay2、devicemapper、btrfs、zfs、vfs等

2. 选择 Docker 存储驱动的总体原则

各种Docker存储驱动都能实现分层的架构,同时又有各自的特性。Docker本身仍然处于不断发展中,没有一个存储驱动能够适应所有的情形。但是,为工作负载选择适合的存储驱动可依据以下原则:

在最常用的场合使用具有最佳整体性能和稳定性的存储驱动

如果内核支持多个存储驱动,则Docker会提供要使用的存储驱动的优先级列表。存储驱动选择顺序是在Docker的源代码中定义的

优先使用Linux发行版默认的存储驱动。Docker安装时会根据当前系统的配置选择默认的存储驱动。如果没有显式配置存储驱动,则表明该存储驱动满足先决条件,这就是默认驱动。默认驱动具有较好的稳定性,已经在该发行版上经过了严格的测试。

一些存储驱动要求使用特定格式的底层文件系统,这可能会限制选择

选择存储驱动还要取决于工作负载的特征和所需的稳定性级别

3.主流的 Docker 存储驱动

对于所有当前支持的 Linux发行版,overlay2存储驱动是首选,不需要任何额外配置

docker  info   查看当前docker使用的存储驱动,从输出结果中查找“Strong Driver”部分


http://www.kler.cn/a/394084.html

相关文章:

  • Oracle ADB 导入 BANK_GRAPH 的学习数据
  • Ubuntu配置阿里云docker apt源
  • Diffusion Policy——斯坦福机器人UMI所用的扩散策略:从原理到其编码实现(含Diff-Control、ControlNet详解)
  • Python提取PDF和DOCX中的文本、图片和表格
  • 数据挖掘(九)
  • 前端开发中常用的包管理器(npm、yarn、pnpm、bower、parcel)
  • 信号保存和信号处理
  • 修改yolo格式的labels类别、删除yolo格式的labels类别
  • redis7.x源码分析:(1) sds动态字符串
  • 【回溯法】——组合总数
  • 【AI技术】GPT-SoVits训练日志
  • 蓝桥杯——杨辉三角
  • 【PGCCC】Postgresql 物理流复制
  • 设计模式之工厂模式,但是宝可梦
  • 【Node.js]
  • TCON 相关知识
  • Git - 命令杂谈 - merge、rebase和cherry-pick
  • git修改当前分支名称并推送到远程仓库
  • 【新手友好】用Pyspark和GraphX解析复杂网络数据
  • 【数据分享】中国食品工业年鉴(1984-2023) PDF
  • 确保HTML邮件兼容所有PC和移动设备的样式
  • Vue Canvas实现区域拉框选择
  • Jmeter中的配置原件(五)
  • 微服务电商平台课程四: 搭建本地前端服务
  • WPF学习之路,控件的只读、是否可以、是否可见属性控制
  • 〔 MySQL 〕数据类型