Docker Volume数据卷

本文详细介绍了Docker数据卷的使用,包括-v和--mount两种挂载方式,以及consistent、cached和delegated三种同步级别对性能的影响。通过示例展示了如何创建和管理数据卷,并指出挂载不存在的本机目录时的区别。同时,讨论了数据卷的备份、还原和迁移策略。
摘要由CSDN通过智能技术生成

@[TOC]Docker Volume数据卷

简介

推荐

Docker官网 数据管理

悟尘记电子书 - 数据持久化存储与性能调优

介绍

25.png

挂载卷的方式 -volume 与 --mount

-v 或–volume 由三个字段组成,以冒号字符 ( :)分隔

卷的名称(或本机目录):容器的目录:权限

  • 卷的名称,匿名卷可省略。并且在给定的主机上是唯一的。
  • 文件或目录在容器中挂载的路径
  • 选项列表,是一个以逗号分隔的选项列表,ro consistent cached delegated 等

数据卷:容器目录

-v volume_data:/data

本机目录:容器目录

-v /data:/data

选项列表

选项列表:权限ro(只读)

-v volume_data:/data:ro

选项列表:同步级别 挂载卷性能问题 本机目录:容器目录:选项列表(consistent,cached,delegated)

挂载卷性能问题:

本机目录:容器目录 运行程序时会出现缓慢的状态,即使使用了 cached或delegated,也达不到最理想的状态

数据卷:容器目录 才可以做到最理想的访问速度

  • consistent 默认值,完美的一致性,即主机和容器实时一致。

-v /data:/data:consistent

  • cached 主机具有权威性。容器执行的写操作对主机是立即可见的,但是在主机上执行的写操作可能不会立即反应在容器内

-v /data:/data:cached

  • delegated 容器的内容具有权威性。提供最弱保证,由容器执行的写操作可能不会立即反映在主机文件系统上,提供的性能要比其他配置好得多。

-v /data:/data:delegated

示例:

docker run --rm -d \
# 数据卷:容器目录
-v volume_data:/data \
# 本机目录:容器目录
-v /data:/data \
# 数据卷:容器目录:权限
-v /data:/data:cached \
debian:buster-slim

–mount 由多个键值对组成,以逗号分隔,每个键值对由一个=元组组成

  • type: 类型:bind,volume(默认),tmpfs
  • source|src:挂载方式。1:命名卷,值是卷的名称。2:匿名卷,省略此字段
  • destination|dst|target: 容器中的文件或目录路径
  • volume-opt: 选项 ro(只读)

示例:

docker run -d \
  --mount src=volume_data,target=/app \
  nginx:latest

两者之间的差异,错误界别不同

如果您使用-v或–volume绑定挂载 Docker 主机上尚不存在的文件或目录,请-v为您创建端点。它始终创建为目录。

如果您使用–mount绑定贴装尚不泊坞窗主机上存在的文件或目录,码头工人也不会自动为您创建它,但会产生一个错误。

备份,还原或迁移数据卷

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水月情缘雪飞飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值