Docker数据卷挂载方式
作者:C_XL0102
文章介绍了Docker数据卷的作用和使用方法,包括数据卷的创建、查看、删除以及挂载,数据卷的主要优点是将数据与容器分离,解耦合,便于操作容器内的数据,保证数据安全,通过挂载数据卷,可以在宿主机上修改容器中的数据,并且可以方便地进行数据的复用和升级维护
Docker数据卷的作用
- 将数据与容器分离,解耦合,方便操作容器内的数据,保证数据安全
- 解决数据与容器耦合的问题所带来的问题
使用数据卷后可以解决以下的这些问题
- 不便于修改 (当我们要修改Nginx的html内容时,需要进入容器内部修改,很不方便。)
- 数据不可复用(数据不可复用在容器内的修改对外是不可见的,并且所有对容器的修改不可复用)
- 升级维护困难(数据在容器内,如果要升级容器必然删除旧容器,所有数据都跟着删除了)
数据卷的逻辑示意图
数据卷操作命令
- 创建一个新的数据卷
docker volume create [数据卷名称]
- 查看所有数据卷
docker volume ls
- 查看数据卷的详细信息
docker volume inspect [数据卷名称]
- 删除指定的数据卷
docker volume rm [数据卷名称]
- 删除没有人使用过的数据卷
docker volume prune
Docker数据卷的挂载
我们在创建容器时,可以通过-v 参数来挂载一个数据卷到某个容器目录
这样我们可以在宿主机上面修改docker容器中的数据
docker run --name mn -v html:/usr/share/nginx/html -p 8080:80 nginx
挂载数据和挂载目录
docker run 的命令中通过 -v参数挂载文件或者目录到容器中:
- -v volume名称:容器内目录
- -v 宿主机文件:容器内文件
数据卷挂载与目录直接挂载的区别
- 数据卷挂载耦合度低,由docker来管理目录,但是目录较深,不好找
- 目录挂载耦合度高,需要我们自己管理目录,不过目录容易查看
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。