阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Docker的数据管理

222次阅读
没有评论

共计 1737 个字符,预计需要花费 5 分钟才能阅读完成。

    用户在使用 Docker 的过程中,往往需要能查看容器内应用产生的数据,或者需要把容器内的数据进行备份,甚至多个容器之间进行数据的共享,这必然涉及容器的数据管理操作。

    容器中管理数据主要有两种方式:

  • 数据卷

  • 数据卷容器

一、数据卷

    数据卷是一个可供容器使用的特殊目录,它绕过文件系统,可以提供很多有用的特性:

  • 数据库可以在容器之间共享和重用。

  • 对数据卷的修改会立刻生效。

  • 对数据卷的更新,不会影响镜像。

  • 卷会一直存在,直到没有容器使用。

1、在容器内创建一个数据卷

    使用 - v 标记可以在容器内创建一个数据卷。多次使用 - v 标记可以创建多个数据卷。

1
docker run -d -P --name web -v /webapp jdeathe/CentOS-ssh

Docker 的数据管理

2、挂载一个主机目录作为数据卷

    使用 - v 标记可以指定挂载一个本地的已有目录到容器中作为数据卷,比如我们把主机的 /home/webapp 挂载到容器的 /mnt/webapp 目录。

1
docker run -d -P --name web -v /home/webapp:/mnt/webapp jdeathe/centos-ssh

Docker 的数据管理

3、挂载本地主机文件作为数据卷

    如果直接挂载一个文件到容器,使用文件编辑工具,可能会造成文件 inode 的改变。

1
docker run -ti -v /root/.bash_history:/root/.bash_history jdeathe/centos-ssh /bin/bash

    同步容器和主机的命令历史。

Docker 的数据管理

二、数据卷容器

    如果用户需要在容器之间共享一些持续更新的数据,最简单的方式是使用数据卷容器。数据卷容器其实就是一个普通的容器,专门用它提供数据卷供其他容器挂载使用方法如下。

    首先创建一个数据卷容器 dbdata,并在其中创建一个数据卷挂载到 /dbdata:

1
 docker run -d --name dbdata -v /dbdata jdeathe/centos-ssh

Docker 的数据管理

    然后,可以在其他容器中使用 –volumes-from 来挂载 dbdata 容器中的数据卷,下面我们创建 db1 和 db2 两个容器,并从 dbdata 容器来挂载数据卷。

1
2
docker run -d --name db1 --volumes-from dbdata jdeathe/centos-ssh
docker run -d --name db2 --volumes-from dbdata jdeathe/centos-ssh

Docker 的数据管理

    我们可以看到三个容器共用一个数据卷,大家的数据都是同步的。其他的一些用户大家可以参照其帮助文档来进行测试。

更多 Docker 相关教程见以下内容

Docker 安装应用(CentOS 6.5_x64) http://www.linuxidc.com/Linux/2014-07/104595.htm 

Ubuntu 14.04 安装 Docker  http://www.linuxidc.com/linux/2014-08/105656.htm 

Ubuntu 使用 VNC 运行基于 Docker 的桌面系统  http://www.linuxidc.com/Linux/2015-08/121170.htm 

阿里云 CentOS 6.5 模板上安装 Docker http://www.linuxidc.com/Linux/2014-11/109107.htm 

Ubuntu 15.04 下安装 Docker  http://www.linuxidc.com/Linux/2015-07/120444.htm 

在 Ubuntu Trusty 14.04 (LTS) (64-bit)安装 Docker http://www.linuxidc.com/Linux/2014-10/108184.htm 

在 Ubuntu 15.04 上如何安装 Docker 及基本用法 http://www.linuxidc.com/Linux/2015-09/122885.htm 

Docker 的详细介绍:请点这里
Docker 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-08/134231.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计1737字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中