Docker下的数据持久化操作

环境: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中看到。

猜你喜欢

转载自blog.csdn.net/suchahaerkang/article/details/83900623
今日推荐