docker 数据卷 详解与实践

常见的数据卷命令

命令

说明

文档地址

docker volume create

创建数据卷

docker volume create

docker volume ls

查看所有数据卷

docs.docker.com

docker volume rm

删除指定数据卷

docs.docker.com

docker volume inspect

查看某个数据卷的详情

docs.docker.com

docker volume prune

清除数据卷

docker volume prune

具体使用方法可通过help查看

docker volume 命令 –help

什么是数据卷

数据卷是一种虚拟目录,将容器内的目录与宿主机的目录关联起来,这样就可以实现在宿主机目录中完成对容器内目录内的文件的修改,不必进入到容器内进行修改.

为什么要在宿主机进行修改?

  • docker容器只提供对应软件的运行环境,不一定提供文本操作所需的软件( 如linux系统进行文本编辑的 vim ) ,因此如果想要修改文件内容 就需要在宿主机进行修改
  • 容器提供程序的运行环境,但是程序运行产生的数据、程序运行依赖的配置都应该与容器解耦。 例如升级mysql的版本,需要将旧的容器销毁,如果没有数据卷,原先的配置都会跟着销毁,需要重新配置.

数据卷使用实践

图片[1] - docker 数据卷 详解与实践 - MaxSSL

修改nginx的访问界面

下载nginx镜像

docker pull nginx

数据卷创建要在容器创建时创建

docker run -d –name mynginx -p 80:80 -v html:/usr/share/nginx/html nginx

图片[2] - docker 数据卷 详解与实践 - MaxSSL

-v 表示创建数据卷

  • html是主机上的目录或卷的名称。这个名称可以是相对路径或绝对路径,表示主机上的某个目录或卷。
  • /usr/share/nginx/html是容器内部的目录,这里是 Nginx 默认用来存放静态网页文件的目录。

然后查看创建的数据卷

docker volume ls

在查看指定数据卷的详情

docker volume inspect html

然后便能得到在宿主机目录地址

图片[3] - docker 数据卷 详解与实践 - MaxSSL

cd 进入到该目录

图片[4] - docker 数据卷 详解与实践 - MaxSSL

修改文件

vim index.html

修改前
图片[5] - docker 数据卷 详解与实践 - MaxSSL

修改后

图片[6] - docker 数据卷 详解与实践 - MaxSSL

这样便完成了第一个目标 修改文件内容

访问 公网ip:端口号 查看

出了点小意外 有乱码 这不重要哈哈哈哈

图片[7] - docker 数据卷 详解与实践 - MaxSSL

部署静态资源

将图片直接拖拽到xshell即可图片[8] - docker 数据卷 详解与实践 - MaxSSL

端口号加上图片名 即可访问了

静态页面/文件 同理

图片[9] - docker 数据卷 详解与实践 - MaxSSL

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享