卷与数据持久化
2020-09-09 本文已影响0人
是立品啊
存储的分类
非持久化存储
非持久化存储也叫容器本地存储,生命周期与容器一致,随容器产生而存在,随容器销毁而消失
持久化存储
说明
卷与容器是非耦合的关系,卷会挂载到容器文件系统的某个目录之下,任何写到该目录下的内容都会写到卷中。即使容器被删除,卷与其上面的数据仍然存在。
使用
- 创建卷
- 创建容器,并挂载卷到容器内某一文件目录
命令
创建
docker volume create myvol
-
-d- 作用:指定驱动,
- 默认是local本地驱动,本地卷只能被所在节点的容器使用
- 第三方驱动:通过插件方式接入,提供了高级存储特性,并为Docker集成了外部存储系统【块储存,文件储存,对象储存】
查看
docker volume ls
docker volume inspect volume_name
image.png
- Mountpoint属性:说明卷位于Docker主机上的位置
删除
docker volume prune
- 会删除未装入到某个容器或者服务的所有卷
docker volume rm volume_name
- 允许删除指定卷
两种删除命令都不能删除正在被容器或者服务使用的卷。
卷在容器中的使用
docker container run -dit --name voltainer --mount source= bizvol target =/vol alpine
-
--mount-
source卷名 -
target挂载目录
-
-
如果指定了已经存在的卷,
Docker会使用该卷,如果指定的卷不存在,Docker会创建一个卷
命令总结
创建
docker volume create [OPTINONS][VOLUME]
查看
docker volume inspect [OPTIONS] VOLUME [VOLUME...]
删除
docker volume rm [OPTIONS] VOLUME [VOLUME...]
挂载
docker run -v 宿主机目录(数据卷名称):容器目录
-
-v第一个参数可以指定宿主机目录名或者数据卷名,如果-v指定的不是宿主机的目录而是一个volume名字,则- 若此
volume不存在,会建立一个 ,使用docker volume inspect 名字查看,详细信息 - 若如果
volume存在则使用已存在的volume
- 若此