博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker下的数据持久化操作
阅读量:4147 次
发布时间:2019-05-25

本文共 827 字,大约阅读时间需要 2 分钟。

环境:centos7 64bit

为了解决数据持久化的问题,Docker提供了卷和卷容器机制。

容器中管理数据有两种主要方式:
数据卷;
数据卷容器
数据卷
数据卷是一个可供容器使用的特殊目录,它绕过文件系统,可以提供很多有用的特性:
数据卷可以在容器之见共享和重用
对数据卷的修改会立马生效
对数据卷的更新不会影响镜像
卷会一直存在,直到没有容器使用
数据卷的使用,类似于Linux下对目录或者文件进行mount操作.

1.直接在容器中创建一个数据卷

docker run -it -v /dockertest centos /bin/bash

2.挂载主机目录作为数据卷

[root@VM_0_9_centos ~]# docker run -it -v /test:/dockertest centos /bin/bash

作用:

将主机中的/test目录文件挂载到容器中的dockertest文件中

容器中的目录结构,新生成了dockertest这个目录

(但貌似主机中如果不存在这个目录的话,也不会报错...)

3.数据卷容器

首先,这个玩意也是一个容器,其他的容器可以通过它达到数据共享,数据迁移的目的。

[root@VM_0_9_centos ~]# docker run -it -v /test --name dbdata1 centos
[root@VM_0_9_centos test]# docker run -it --volumes-from dbdata1 --name db2 centos

目录结构如下:

也可以看到test文件夹

然后在

db2中做如下的修改:

[root@75ea710d224c /]# cd test[root@75ea710d224c test]# touch simple[root@75ea710d224c test]# ls

查看db1容器,

在db2中作出的改动可以直接在db1中看到。

你可能感兴趣的文章
【JavaScript 教程】标准库—Date 对象
查看>>
前阿里手淘前端负责人@winter:前端人如何保持竞争力?
查看>>
【JavaScript 教程】面向对象编程——实例对象与 new 命令
查看>>
我在网易做了6年前端,想给求职者4条建议
查看>>
SQL1015N The database is in an inconsistent state. SQLSTATE=55025
查看>>
RQP-DEF-0177
查看>>
MySQL字段类型的选择与MySQL的查询效率
查看>>
Java的Properties配置文件用法【续】
查看>>
JAVA操作properties文件的代码实例
查看>>
IPS开发手记【一】
查看>>
Java通用字符处理类
查看>>
文件上传时生成“日期+随机数”式文件名前缀的Java代码
查看>>
Java代码检查工具Checkstyle常见输出结果
查看>>
北京十大情人分手圣地
查看>>
Android自动关机代码
查看>>
Android中启动其他Activity并返回结果
查看>>
2009年33所高校被暂停或被限制招生
查看>>
GlassFish 部署及应用入门
查看>>
X-code7 beta error: warning: Is a directory
查看>>
Error: An App ID with identifier "*****" is not avaliable. Please enter a different string.
查看>>