简要笔记-Docker 数据卷

Docker数据卷定义

数据卷是一个特殊的目录。因为Docker通过宿主机文件系统上的数据卷数据ID与容器进行绑定挂载,所以在一定程度上,容器被映射的目录可以看成数据卷的目录。但是容器被映射的目录(不管非空与否)会被数据卷覆盖。

什么是数据卷

数据卷是将容器内数据可以挂载到本地目录中从而实现数据的持久化。

总结就是容器持久化和同步操作

为什么需要数据卷

  • 数据持久化
    • 容器删除,容器内的数据将一并删除。这样会造成数据丢失。
  • 共享数据
    • 容器间共享数据。

使用数据卷

创建数据

  • 方式一 直接命令
    • 命令docker run -v挂载
    • docker run -itd -v 主机目录:容器目录 image
  • 方式二 使用DockerFile
    • 创建镜像是指定数据卷
    • VOLUME ["volume01","volume02"]

具名与匿名挂载

  • 具名挂载
    • 在挂载时,给数据卷指定名称(且不能以/开始)
    • 例子:以创建MySQL容器为例子
        docker run -itd --name container -P -v mysql-conf:/etc/mysql/conf.d mysql:5.7 ...
    
  • 匿名挂载
    • 直接挂载,不给定名称
    • docker 将会随机生成匿名挂载的数据卷名称
    • 例子:依旧MySQL容器为例
    docker run -itd --name container -P -v /etc/mysql/conf.d mysql:5.7 ...
    
  • 指定路径挂载
    • 使用绝对路径指定映射目录,将是匿名的数据卷名称
    • 例子:
        docker run itd --name contianer -P -v /[path]:/etc/mysql/conf.d mysql:5.7 ...
    

注意:

  • 所有的数据卷的数据(不管是绝对路径还是具名或匿名挂载),它们将存放于/var/lib/docker/volumes/[name]/_data目录中。

  • 常常使用具名挂载

数据卷的权限

这些权限旨在控制容器内的读写权限,宿主机不受影响

  • ro readonly 只读
  • rw readwrite 可读可写
  • 格式:
    • -v name:/etc/nginx:ro 只读
    • -v name:/etc/nginx:rw 可读可写
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值