docker06:容器卷技术

一、docker理念回顾

        docker将应用和环境打包成一个镜像

        项目中我们希望数据能够持久化,即哪怕删除了容器数据也不受影响,这里就需要容器与容器间,容器与宿主机间有一个数据共享的技术。docker容器内部产生的数据能够同步至宿主机永久保存,这个就是卷技术,即是将本地目录挂载到容器内部,容器删除后不影响数据,容器运行时能直接使用已有数据。

 二、挂载

        方法一:启动时挂载

        docker run -v 宿主机目录:容器内目录

        实战测试

        1、现在宿主机root目录下创建一个文件夹test

        2、使用centos镜像创建一个容器,将宿主机/root/test目录挂载到容器内/home目录

        

        3、检查容器挂载信息,宿主机内执行:docker inspect 容器id

        

        4、容器内/home目录下新建一个文件:text1,检查宿主机/root/test/目录下是否有该文件

 

        5、宿主机/root/test/目录下新建一个文件:test2,减少容器/home目录下是否有该文件

        6、停止容器并删除,检查宿主机内/root/test/目录下文件是否存在

        方式二:dockerfile挂载

        dockerfile就是用来构建docker镜像的构建文件,可以通过这个镜像生成镜像

可以看出,dockerfile文件挂载方式为:匿名挂载 

三、具名挂载和匿名挂载

        1、匿名挂载

        -v :容器内目录

        实战测试:

        1、匿名挂载启动centos

        docker run -it -v :/home centos

        将centos的/home目录匿名挂载启动

         

        此时发现,宿主机没有指定路径的情况下,挂载目录都是在 :/var/lib/docker/volumes/哈希值/_data/

        2、具名挂载

                -v 宿主机路径:容器内路径

                -v 卷名:容器内路径

                一般大多数情况下都是用的具名挂载方式 

 四、挂载时权限

        -v 卷名:容器内路径:ro        容器对挂载目录只有读权限

        -v 卷名:容器内路径:rw        容器对挂载目录可读可写,默认为此权限

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值