本文介绍: 卷 就是目录文件,存在于一个或多个容器中,由docker挂载容器,但不属于联合文件系统,因此能够绕过Union File System提供一些用于持续存储共享数据特性。卷的设计目的就是数据持久化,完全独立于容器的生存周期,因此Docker不会在容器删除时删除其挂载的数据卷。将docker容器内的数据保存进宿主机磁盘中。docker应用运行环境打包镜像run后形成容器实例运行 ,但是我们对数据的要求希望是持久化的。

1.什么是容器数据库

docker容器内的数据保存进宿主机磁盘中。docker应用运行环境打包镜像run后形成容器实例运行 ,但是我们对数据的要求希望是持久化的。
Docker容器产生的数据,如果不备份,那么当容器实例删除后,容器内的数据自然也就没有了。为了能保存数据,在docker我们使用卷。
在这里插入图片描述

2.数据的覆盖问题

如果挂载一个空的数据卷到容器中的一个非空目录中,那么这个目录下的文件会被复制到数据卷中。

  1. 如果挂载一个非空的数据卷到容器中的一个目录中,那么容器中的目录中会显示数据
  2. 卷中的数据。如果原来容器中的目录中有数据,那么这些原始数据会被隐藏掉。

3.为什么要用数据卷

4.Docker提供了两种卷:

  1. bind mount
  2. Docker managed volume

5.两种卷的区别

在这里插入图片描述

6.bind mount

docker run --rm -it -v [本地路径]:[Docker内路径] [images]

7.Docker managed volume

  • docker managed volume不需要指定mount源,docker自动为容器创建数据卷目录。
  • 默认创建的数据卷目录都在/var/lib/docker/volumes中。
  • 如果挂载时指向容器内已有的目录,原有数据会被复制到volume中。
  • 只能支持目录的挂载,不能支持文件的挂载
docker run --rm -it -v [名称]:[Docker内路径] [images]

volume 语法

docker volume [COMMAND]

volume 操作参数

参数 说明
create 创建
inspect 查看信息
ls 列表
prune 删除没用的卷
rm 删除一个或多个卷

原文地址:https://blog.csdn.net/sinat_36528886/article/details/134618792

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_5037.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注