Docker学习笔记三(容器的数据卷)

4 篇文章 0 订阅
3 篇文章 0 订阅

Docker学习笔记三(容器的数据卷)

一、数据卷的概念

  • 思考
    • Docker删除容器之后,在容器内的产生的数据也会随之销毁。
    • Docker容器和外部机器如何交换数据。
    • 容器之间如何数据交互。
  • 数据卷
    • 数据卷是宿主机中的一个目录或文件。
    • 当容器的目录和数据卷目录绑定后,对方的修改会立即同步。
    • 一个数据卷可以被多个容器同时挂载。
    • 一个容器也可以挂载多个数据卷。
  • 数据卷的作用
    • 容器数据持久化
    • 外部机器和容器间接通信
    • 容器之间数据交换

二、配置数据卷

  • 创建启动容器时,使用-v参数设置数据卷

    sudo docker run .... -v 宿主机目录(文件):容器内目录(文件)...
    
    • 注意事项

      1、目录必须是绝对路径

      2、如果目录不存在,会自动创建

      3、可以挂载多个数据卷

    image-20230607152824113

    image-20230607153115891

    image-20230607153721949

    image-20230607153700113

    可以看到在宿主机下的data文件中创建了maze.txt后,在容器中的data_container中也会出现maze.txt

数据卷容器

多个容器如何进行数据交换?

  • 多个容器挂载同一个数据卷

  • 使用数据卷容器

    image-20230607155702856

    使用数据卷容器的方式是指构建一个容器,该容器挂载了数据卷,被称为数据卷容器,当其他的容器挂载在这个数据卷容器下时,也可以访问该数据卷。同时,当数据卷容器挂了时,也可以继续访问该数据卷。

配置数据卷方法

  1. 创建启动c3数据卷容器,使用-v参数 设置数据卷

    sudo run -it --name=c3 -v /volume centos /bin/bash
    
  2. 创建c1、c2容器,使用–volumes-from参数,设置数据卷

    sudo run -it --name=c1 --volumes-from c3 centos /bin/bash
    sudo run -it --name=c2 --volumes-from c3 centos /bin/bash
    
  3. 数据卷小结

    1. 数据卷概念
      • 宿主机的一个目录或文件
    2. 数据卷的作用
      • 容器数据持久化
      • 客户端和容器数据交换
      • 容器间数据交换
    3. 数据卷容器
      • 创建一个容器,挂载一个目录,让其他容器继承该容器(–volumes-from)
      • 通过简单方式实现数据卷配置
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值