zoukankan      html  css  js  c++  java
  • Docker 容器的数据卷 以及 数据卷容器

    Docker 容器删除后,在容器中产生的数据还在吗? 答案是 不在
    Docker 容器和外部机器可以直接交换文件吗? 在没有数据卷的情况下,答案是 不可以
    如下图:外部机器:Windows系统(自己的电脑)  宿主机:centOS7  容器:docker容器
    容器之间想要进行数据交互? 在没有数据卷的情况下,答案是 不可以
    那么 究竟什么是数据卷?
    数据卷(注意,只有当宿主机上的目录被容器挂载的时候,才称之为叫数据卷)
    • 数据卷是宿主机中的一个目录或文件
    • 当容器目录和数据卷目录绑定后,对方的修改会立即同步
    • 一个数据卷可以被多个容器同时挂载
    • 一个容器也可以被挂载多个数据卷
    数据卷作用
    • 容器数据持久化
    • 外部机器和容器间接通信
    • 容器之间数据交换
     
    配置数据卷
    ⚫ 创建启动容器时,使用 –v 参数 设置数据卷
    docker run ... –v 宿主机目录(文件):容器内目录(文件) ...
    docker run -it --name=c1 -v /usr/local/soft/dockerdir:/usr/local/soft/dockerdata centos:7 /bin/bash
    ⚫ 注意事项:
    1. 目录必须是绝对路径
    2. 如果目录不存在,会自动创建
    3. 可以挂载多个数据卷 
    配置数据卷容器
    1. 创建启动c3数据卷容器,使用 –v 参数 设置数据卷(docker会自动分配到宿主机上一个目录,这里的 /volume是容器中的一个目录,名字可自定义
    docker run –it --name=c3 –v /volume centos:7 /bin/bash
    2. 创建启动 c1 c2 容器,使用 –-volumes-from 参数 设置数据卷
    docker run –it --name=c1 --volumes-from c3 centos:7 /bin/bash
    docker run –it --name=c2 --volumes-from c3 centos:7 /bin/bash
    
    数据卷小结
    1. 数据卷概念
    •宿主机的一个目录或文件
    2. 数据卷作用
    •容器数据持久化
    •客户端和容器数据交换
    •容器间数据交换
    3. 数据卷容器
    •创建一个容器,挂载一个目录,让其他容器继承自该容器( --volume-from )。
    •通过简单方式实现数据卷配置
     
  • 相关阅读:
    Linux内核的异常修复原理
    sudo: insmod: command not found
    在Qemu+ARM上运行Minix3内核
    2021.34 面对干扰
    2021.33 实践
    selenium+python自动化106
    python测试开发django-111.模型管理器(models.Manager)
    python笔记64
    python笔记63
    python笔记62
  • 原文地址:https://www.cnblogs.com/wyh-study/p/13897167.html
Copyright © 2011-2022 走看看