Docker容器数据卷
2021/12/29 23:12:50
本文主要是介绍Docker容器数据卷,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Docker容器数据卷
容器具有隔离性,默认情况下,容器内应用产生的数据都是由容器本身独有,如果容器被删除,对应的数据文件就会跟着消失。从容器隔离性角度来看,数据和容器时共存亡的;但是在实际应用场景中,更多的是需要数据能够持久化,而且很多场景也需要容器间数据能够共享。
手动存储数据
手动存储数据有两种方式:命令拷贝和容器提交为镜像。
-
命令拷贝
容器和主机之间可以通过命令进行数据拷贝,在容器删除之前,可以先将容器中的数据拷贝下来。
-
容器提交为镜像
通过将容器进行提交,制作为新的镜像,将数据保存到新的镜像中。
手动备份的不足:时效上不能及时备份,效率低下,容易出现错误,更辛苦的是做备份的小盆友。
容器数据卷自动备份
为了能高效率及时的保存数据,在docker中使用了容器卷进行自动备份。数据卷可以理解为文件或目录,设计的目的就是为了数据的持久化和共享;
数据卷完全独立于容器的的生命周期,容器删除时,对应挂载的数据卷不会被删除。
通过将容器内的目录挂载到主机上面,就可让数据实现同步,不管是主机改动,还是容器内改动,都会同步更新。
数据卷特点:
1:数据卷可在容器之间共享或重用数据
2:卷中的更改可以直接生效
3:数据卷中的更改不会包含在镜像的更新中
4:数据卷的生命周期一直持续到没有容器使用它为止
命令方式添加
-
添加容器卷
docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名
-
查看数据卷是否挂载成功
docker inspect 容器ID或容器名
-
容器和宿主机之间数据共享
-
容器停止退出后,主机修改后数据同步验证
-
带权限的添加容器卷 容器只读
Dockerfile
方式添加
-
创建文件夹,并在文件夹中创建
DockerFile
文件。 -
在
DockerFile
中使用VOLUMN指令
给镜像添加一个或多个数据卷 -
通过
docker build命令
生成镜像文件,获得一个新的镜像 -
通过
docker run命令
生成一个容器。 -
通过
docker inspect命令
查看容器卷挂载情况
数据卷容器
命名的容器用来挂载数据卷,其他容器通过挂载这个容器(父容器)来实现数据共享,挂载数据卷的容器,称之为数据卷容器。主要用于容器间数据的传递和共享。
- 创建具有容器卷的父容器
- 创建子容器,且继承父容器
- 在子/父容器中的数据卷中添加数据,可以看到在父子容器间,数据是共享的
- 删除父容器,发现子容器之间的数据还是共享的
- 创建子容器的子容器,发现数据也是能够共享的
欢迎关注本人微信公众号
这篇关于Docker容器数据卷的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-21Docker环境部署资料:新手入门指南
- 2024-09-20Docker环境部署项目实战:新手入门全攻略
- 2024-09-20Docker环境部署:新手入门教程
- 2024-09-20Docker环境部署学习:从入门到实践
- 2024-09-20Docker环境部署入门:新手必读指南
- 2024-09-20Docker环境部署教程:新手入门指南
- 2024-09-19Docker部署实战:新手入门指南
- 2024-09-19Docker部署实战:新手入门教程
- 2024-09-19Docker部署资料:入门级用户轻松掌握Docker部署教程
- 2024-09-18Docker部署入门:轻松搭建容器化环境