zoukankan      html  css  js  c++  java
  • Docker数据卷

    关于docker数据卷的理解,大概就是说,在某个容器内工作时,产生的数据或者文件之类的,当退出该容器时,这些数据和文件就会随之消失,这样的影响是,数据的使用范围被限制在容器内(这样也太没意思了),于是出来数据卷这个概念,直白理解就是在容器和宿主机之间的数据共享

    以下记录学习过程中的笔记

    添加数据卷的方式有两种,第一种是直接通过命令行挂载,第二种是通过dockerFile添加

    记录的是通过命令行挂载:命令行如下

    docker run -it -v  /宿主机绝对路径目录:/容器内目录  镜像名

    举个栗子:

    docker run -it -v /myDataVolume:/dataVolumeContainer centos

    上面这条命令的意思是,将主机根目录下的myDataVolume目录和容器根目录下的dataVolumeContainer这个目录联系起来,容器是指在运行完centos这个镜像后产生的容器。

    -v 参数会自动创建相关的目录。

     

    运行完上述的命令后,可以去到宿主机和容器内分别查看是否已经产生了相应的目录(无意外的话会有的)

    那么,就可以在宿主机/myDataVolume 目录和容器的 /dataVolumeContainer目录间进行数据的共享操作了。

    比如在/myDataVolume目录下新建一个txt并写入相关的内容,在容器的/dataVolumeContainer目录下也会看到有相关的文件,同理,在容器创建的文件也可以在宿主机内看到

     

    这是因为此时默认的是容器对共享文件有读写的操作权限,可以通过 一下命令验证

    docker inspect container_id(对应的容器id)

    比如下:

    当然,也可以限制容器内的操作权限为只读,命令如下:

    docker run -it -v  /宿主机绝对路径目录:/容器内目录:ro  镜像名

    ro是read only的缩写,这样一来就是,在容器内对共享的文件只能读,不能写,docker inspect container_id查看

    PS:在主机删除共享的数据卷时使用了 rm -rf myDataVolume 来删除,但是,不成功,后来发现要先退出container对该共享数据卷的操作!

  • 相关阅读:
    Python关键字
    tomcat中 server.xml
    Java web.xml笔记
    HTML标签笔记
    jsp笔记
    Ubuntu 安装 chrome
    隐藏文件管理器左侧导航栏的部分内容
    virtualbox中设置u盘启动
    剑指Offer题解索引
    当你在浏览器地址栏输入一个URL后回车,将会发生的事情?
  • 原文地址:https://www.cnblogs.com/Guhongying/p/10894896.html
Copyright © 2011-2022 走看看