Docker创建数据卷

当程序在容器中运行时,
需要与其他容器中的程序或者容器外部的程序进行文件读写操作时,
就需要进行数据的交换;
容器内部的文件系统,
是一个临时层,
当容器停止运行并被删除时,
这个临时层就会被一同丢弃;
为了达到从外部获取文件并且持久化存储的目的,
Docker提供了数据卷;
数据卷是一个从外部挂载在容器内文件系统的目录,
脱离了容器的生命周期而独立存在,
当容器停止运行并被删除时,
数据卷不会受到影响,
会依然存在于Docker宿主机之中!

docker run -d --name test_1 -v /yjl nginx
运行test_1容器,并在容器内创建一个路径为/yjl的数据卷

docker run -d --name test_2 -v /root/yjl:/data_2 nginx
运行test_2容器,加载宿主机的/root/yjl目录到容器的/data_2目录作为数据卷

docker volume create --name data_3
使用docker volume命令创建一个别名为data_3的数据卷

docker volume inspect data_3
查看数据卷信息

请注意此目录是宿主机的数据卷,
而不是容器的数据卷。

docker run -d --name test_3 -v data_3:/data_3 nginx
运行test_3容器,挂载data_3数据卷到容器的/data_3目录作为数据卷

docker volume list
查看宿主机中的数据卷

docker volume rm <参数:数据卷的VOLUME NAME>
删除数据卷
请注意如果数据卷没有取别名,
则名称是64位的全名,
不支持模糊匹配,
所以在创建数据卷时最好取别名。

docker rm -v <参数:容器名称>
随容器删除数据卷,
只针对随容器创建时而创建的数据卷。

原文地址:https://www.cnblogs.com/yjlch1016/p/9033078.html