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 )。
•通过简单方式实现数据卷配置
 

Docker 容器的数据卷 以及 数据卷容器的更多相关文章

  1. 聊聊Docker数据卷和数据卷容器

    当程序在容器运行的时候,特别是需要与其他容器中的程序或容器外部程序进行沟通交流,这时需要进行数据交换,作为常用的两种沟通数据的方式,网络通信与文件读写是需要提供给程序的支持, [数据卷] 文件是数据持 ...

  2. Docker 数据卷和数据卷容器

    1.本节课主要讲解如何在Docker内部及容器之间管理数据.容器中管理数据主要有两种方式:数据卷(Data volumes)数据卷容器(Data volume containers) 2.数据卷:是一 ...

  3. Docker数据卷和数据卷容器

    是什么 数据卷设计的目的,在于数据的永久化,他完全独立于容器的生存周期,因此,Docker不会在容器删除时删除其挂载的数据卷,也不会存在类似的垃圾收集机制对容器引用的数据卷进行处理.类似我们Redis ...

  4. 『现学现忘』Docker基础 — 33、Docker数据卷容器的说明与共享数据原理

    目录 1.数据卷容器的说明 2.数据卷容器共享数据原理 3.总结 4.练习:MySQL实现数据共享 1.数据卷容器的说明 (1)什么是数据卷容器 一个容器中已经创建好的数据卷,其它容器通过这个容器实现 ...

  5. Docker-数据卷和数据容器卷

    容器中管理数据主要有两种方式: 数据卷(Data Volumes) 数据卷容器(Data Volumes Dontainers) 数据卷 使用-v可以挂载一个本地的目录到容器中作为数据卷. [root ...

  6. docker--数据卷与数据卷容器

    docker--数据卷与数据卷容器 1.数据卷: 创建一个volumes的文件夹: [root@docker01 /]# mkdir volumes [root@docker01 /]# ls bin ...

  7. docker-ce-17.09 数据卷和数据卷容器

    docker容器中管理数据两种方式:1.数据卷(Data Volumes)2.数据卷容器(Data Volume Dontainers) 一.数据卷特性:1.数据卷可以在容器之间共享和重用2.对数据卷 ...

  8. docker定义数据卷及数据卷的备份恢复

    前言:生产环境中使用docker时,往往需要对数据进行持久化(只有把容器导出为镜像,才能够保存写的数据,否则容器删除或者停止,所有数据都会没有),或者需要在多个容器之间进行数据共享,这必然涉及容器的数 ...

  9. docker系列(四):数据卷

    1 引言 容器就相当于一个简易的操作系统,我们在上面部署我们的环境,不可避免地产生一些数据,但是,可能由于断电等等原因,容器退出了,那么之前容器中的数据就不符存在,则往往不是我们想要的,更多的,我们是 ...

  10. docker mysql8.0 启动,挂数据卷,定时备份,恢复~

    安装mysql 从mysql社区版的官方源去拉取镜像:mysql/mysql-server - Docker Image | Docker Hub docker run --name=mysql1 - ...

随机推荐

  1. windows 也支持右键复制文件名了

    mac 有一个操作,alt + 右键,出现的菜单有复制路径一项.不用羡慕,现在 windows 也有这个功能了. Shift + 右键,"复制为路径":

  2. nginx-tengine-invalid IPv6 address in resolver-解析器中无效的IPv6地址

    问题描述:解析器中无效的IPv6地址 [root@dm ~]# nginx -t nginx: [emerg] invalid IPv6 address in resolver "[fe80 ...

  3. idea中terminal的配置

    idea中terminal的配置流程: File->settings->Tools->terminal 然后根据需要进行配置: 显示git操作界面 Shell path ==> ...

  4. pmml(模型标准化)

    PMML简介PMML全称预言模型标记模型(Predictive Model Markup Language),以XML 为载体呈现数据挖掘模型.PMML 允许您在不同的应用程序之间轻松共享预测分析模型 ...

  5. Windows下如何在当前目录下,打开cmd命令窗口

    方法一: 在当前目录下,按下shift + 鼠标右键,会出现"在此处打开命令窗口"的字样,然后点击即可. 方法二: 在该文件夹上,按下shift + 鼠标右键,会出现"在 ...

  6. Anaconda中的Spyder软件设置为中文教程

     Anaconda中的Spyder软件设置为中文教程 第一步:工具栏中Tools --> Preferences 第二步:第二栏的 Application--> 第二个选项卡Advance ...

  7. Qt音视频开发14-mpv读取和控制

    一.前言 用mpv来读取文件的信息,以及设置当前播放进度,音量.静音等,和当时vlc封装的功能一样,只不过vlc是通过调用函数接口去处理,而mpv是通过读取和设置属性来处理,vlc支持定时器或者线程中 ...

  8. MS Webview2 拦截 interact/intercept

    https://docs.microsoft.com/en-us/microsoft-edge/webview2/how-to/webresourcerequested?tabs=dotnet 自定义 ...

  9. 第十三章 HashMap&HashSet源码解析

    HashMap源码解析 5.1.对于HashMap需要掌握以下几点 Map的创建:HashMap() 往Map中添加键值对:即put(Object key, Object value)方法 获取Map ...

  10. Elasticsearch(6) --- Query查询和Filter查询

    这篇博客主要分为 :Query查询和Filter查询.有关复合查询.聚合查询也会单独写篇博客. 一.概念 1.概念 一个查询语句究竟具有什么样的行为和得到什么结果,主要取决于它到底是处Query还是F ...