前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker容器如何共享数据

Docker容器如何共享数据

作者头像
dys
发布2018-04-02 16:04:17
1.7K0
发布2018-04-02 16:04:17
举报
文章被收录于专栏:性能与架构性能与架构

容器与外部的数据共享是通过数据卷实现的

数据卷概念

是容器与外部在文件系统上的通道,可以和主机的文件系统建立联系,也可以和其他容器建立文件级的联系

容器把希望对外的数据写入自己的数据卷,其他容器就可以加载这个数据卷,操作其中的数据了

数据卷可以指定目录和文件,但实际操作中经常使用目录,所以数据卷可以大概理解为一个挂载目录,可以和挂载主机目录,也可以被其他容器挂载,这样就实现了容器和主机之间、容器和容器之间的数据共享问题

数据共享两种形式

(1)挂载一个主机目录作为数据卷

挂载一个本地已有目录到容器中作为数据卷

代码语言:javascript
复制
$ sudo docker run -d -P --name web -v /src/webapp:/opt/webapp training/webapp

-v 指定创建一个数据卷

代码语言:javascript
复制
/src/webapp:/opt/webapp    冒号前是主机目录,冒号后是容器内目录

(2)容器间共享数据卷

容器A创建了数据卷

$ sudo docker run -it -v /dbdata --name dbdata ubuntu

容器B引用容器A的数据卷

使用参数 --volumes-from 来挂载dbdata容器中的数据卷

$ sudo docker run -it --volumes-from dbdata --name db1 ubuntu

任何一方在该目录下的写入,其他容器都可以看到

可以多次使用--volumes-from参数来从多个容器挂载多个数据卷。还可以从其他已经挂载了容器卷的容器来挂载数据卷

$ sudo docker run -d --name db2 --volumes-from db1 ubuntu

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2015-06-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JAVA高性能架构 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档