创建容器使用bind mounts 挂载文件系统。宿主机文件系统会覆盖掉容器里初始数据

[root@localhost ~]# mkdir /www/htpm -pv
mkdir: 已创建目录 "/www"
mkdir: 已创建目录 "/www/htpm" [root@localhost ~]# docker run -d --name web-7 -p 82:80 --mount type=bind,src=/www/htpm,dst=/usr/share/nginx/html nginx
814082b3448bac40f12fbce6f9f207032d76bf284d8c633a5c7b29788d6e6d85
[root@localhost ~]# ls /www/htpm/
[root@localhost ~]# docker exec -it web-7 bash
root@814082b3448b:/# cd /usr/share/nginx/html/
root@814082b3448b:/usr/share/nginx/html# ls
root@814082b3448b:/usr/share/nginx/html#
root@814082b3448b:/usr/share/nginx/html# mkdir l
root@814082b3448b:/usr/share/nginx/html# echo "chenxi" > index.html
root@814082b3448b:/usr/share/nginx/html# ls
index.html l
root@814082b3448b:/usr/share/nginx/html# exit
exit [root@localhost ~]# ls /www/htpm/
index.html l

  

使用另一种方式挂载

[root@localhost ~]# docker run -d --name web-c -p 91:80  -v /www:/opt nginx
9eb50928c53e83b9804862b6441d22fc8a27a4963bd025cd8af41e3922e8e704
[root@localhost ~]# ls /www/
htpm
[root@localhost ~]# docker run
centos centos:latest nginx nginx:latest nginx:web4
[root@localhost ~]# docker exec -it web-c bash
root@9eb50928c53e:/# ls /opt/
htpm
root@9eb50928c53e:/# ls /opt/htpm/
index.html l
root@9eb50928c53e:/#

volume 与bind mounts 的区别

volume 特点

运行多个容器之间共享数据

当容器被移除时,该卷依旧存在

多容器可以同时挂载相同的卷

当明确删除时卷才会被删除

将容器数据存储在远程数据或其他主机上

将数据从一台docker主机迁移到另一台是,先停止容器,然后备份卷的目录

bind mounts的特点

从主机共享文件到容器。默认情况下。挂载主机/etc/resolv.conf 到每个容器。提供dns解析

在docker主机上的开发环境和容器之间共享源代码。例如,可以将maven target 目录挂载到容器中,每次docker主机构建项是maven项目时,容器都可以访问构建的项目包

当docker主机文件或目录结构包证与容器所需的绑定挂载一致时

docker 应用数据的管理之bind mounts的更多相关文章

  1. docker从零开始 存储(三)bind mounts

    使用bind mounts 自Docker早期以来bind mounts 一直存在.与volumes相比,绑定挂载具有有限的功能.使用bind mounts时,主机上的文件或目录将装入容器中.文件或目 ...

  2. Docker 基础知识 - 使用绑定挂载(bind mounts)管理应用程序数据

    绑定挂载(bind mounts)在 Docker 的早期就已经出现了.与卷相比,绑定挂载的功能有限.当您使用绑定挂载时,主机上的文件或目录将挂载到容器中.文件或目录由其在主机上的完整或相对路径引用. ...

  3. `docker数据持久化volume和bind mounts两种方式

    将数据从宿主机到容器的三种方式: ,volumes:docker管理宿主机文件系统的一部分(/var/lib/docker/volumes)保存数据的最佳方式 ,bind mounts 将宿主机上的任 ...

  4. docker 应用数据的管理

    容器数据存储的三种方式 docker volume docker管理素质及文件系统的一部分,保存数据最佳方式 bind mounts   将宿主机的文件映射到容器里 tmpfs   存储在宿主机的内存 ...

  5. docker之数据卷管理

    转自:https://www.cnblogs.com/jsonhc/p/7777811.html docker之数据卷的备份和还原 1.现在利用镜像创建一个nginx的服务容器,并挂载一个数据卷 [r ...

  6. Docker 基础知识 - 使用 tmpfs 挂载(tmpfs mounts)管理应用程序数据

    卷(volumes) 和 绑定挂载(bind mounts) 允许您在主机和容器之间共享文件,这样即使在容器停止后也可以持久存储数据. 如果在 Linux 上运行 Docker,那么还有第三种选择:t ...

  7. Docker学习第三天(Docker数据卷管理)

    1.Docker数据卷管理 在Docker中,要想实现数据的持久化(所谓Docker的数据持久化即数据不随着Container的结束而结束),需要将数据从宿主机挂载到容器中.目前Docker提供了三种 ...

  8. docker 数据卷管理

    在生产环境中使用docker,往往需要对数据进行持久化,或者需要在多个容器之间进行数据共享,这涉及到容器对数据管理的操作 容器对数据的管理主要有两种方式: 数据卷(Data Volumes): 容器内 ...

  9. docker(5):数据的管理

    Docker的volume卷 为了能持久话保存和共享容器的数据. 使用docker volume卷的两种方式 1:数据卷 2:数据卷容器 1:数据卷 数据卷:数据卷会绕过docker 的ufs 直接写 ...

随机推荐

  1. Exception in thread "main" org.hibernate.MappingException: Unknown entity: com.mao.PersonSet

    转自:https://blog.csdn.net/vipmao/article/details/51334743

  2. DC 兼容的DC

    DC是 "Device Content" , MS VC++ 的 MFC图形设备接口 的 设备描述表.它是MFC的主要对象之一.通过CDC类进行各种绘图操作,例如选笔,选色,选涂色 ...

  3. 4种java复制文件的方式

    尽管Java提供了一个可以处理文件的IO操作类,但是没有一个复制文件的方法.复制文件是一个重要的操作,当你的程序必须处理很多文件相关的时候.然而有几种方法可以进行Java文件复制操作,下面列举出4中最 ...

  4. UILabel和UIButton添加下划线

    关于UILabel和UIButton有的时候需要添加下划线,一般有两种方式通过默认的 NSMutableAttributedString设置,第二种就是在drawRect中画一条下划线,本文就简单的选 ...

  5. hdoj1027【STL系列。。。?】

    这个太夸张了...感觉是有别的方法,但是觉得再说吧...以后碰到全排列应该也是用STL嗨的吧...嗯,,,就是这样的....?再说,再说.. 还有杭电支持c艹11,很棒 #include <bi ...

  6. bzoj 4044: [Cerc2014] Virus synthesis【回文自动机+dp】

    建回文自动机,注意到一个回文串是可以通过一个长度小于等于这个串长度的一半的回文串添上一些字符然后复制得到的,也就是在自动机上向fa走,相当于treedp 每次都走显然会T,记录一个up,指向祖先中最下 ...

  7. IT兄弟连 JavaWeb教程 请求转发案例

    CheckServlet类与OutputServlet类之间为请求转发关系.在web.xml文件中,为CheckServlet映射的URL为"/check",为OutputServ ...

  8. 学习Mahout(一)

    Mahout 官方下载地址:http://apache.fayea.com/apache-mirror/mahout/ 环境ubuntu 12.04, hadoop1.2.1 ,mahout 0.9 ...

  9. boost 编译 asio 程序,简单socket 编程

    自己第一次玩boost,对C++也非常不熟悉,记录一下自己的学习过程. 安装编译 boost 包解压到/opt下 tar -zxvf /media/C06EDE596EDE47B4/mnt/boost ...

  10. 跟我一起玩Win32开发(8):绘图(A)

    从本篇开始,我就不吹牛皮,那就吹吹兔皮吧.说说与绘图有关的东东. 要进行绘制,首先要得到一个DC,啥是DC呢?按字面翻译叫设备上下文,也可以翻译为设备描述表,它主要指API为我们封装了一些与显示设备相 ...