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的版本,需要将旧的容器销毁,如果没有数据卷,原先的配置都会跟着销毁,需要重新配置.

数据卷使用实践

修改nginx的访问界面

下载nginx镜像

docker pull nginx

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

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

-v 表示创建数据卷

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

然后查看创建的数据卷

docker volume ls

在查看指定数据卷的详情

docker volume inspect html

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

cd 进入到该目录

修改文件

vim index.html

修改前

修改后

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

访问 公网ip:端口号 查看

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

部署静态资源

将图片直接拖拽到xshell即可

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

静态页面/文件 同理

相关推荐
我是无敌小恐龙11 分钟前
Java SE 零基础入门 Day05 类与对象核心详解(封装+构造方法+内存+变量)
java·开发语言·人工智能·python·机器学习·计算机视觉·数据挖掘
牛奶咖啡1315 分钟前
Docker容器实践——Docker常用基础镜像的解析与选择
docker·容器·docker基础镜像·docker基础镜像选择·docker基础镜像最佳实践·docker基础镜像的分类·docker基础镜像的对比
va学弟24 分钟前
Agent入门开发(2):个性化功能添加
java·服务器·ai
84869811924 分钟前
Cursor 用 Java + Vue3 做了一个可落地的酒店管理系统(HMS),支持多门店、RBAC、财务结算,源码开源!
java·开发语言·开源
java_logo25 分钟前
Docker 部署 Open WebUI + Ollama 完整教程(Windows / Linux 通用)—— 打造自己的本地OpenAI
linux·docker·容器·ollama·open-webui·open-webui部署·open-webui教程
杨浦老苏35 分钟前
AI使用追踪和代理网关GoModel
人工智能·docker·ai·api·群晖
程序员老邢35 分钟前
【技术底稿 23】Ollama + Docker + Ubuntu 部署踩坑实录:网络通了,参数还在调
java·经验分享·后端·ubuntu·docker·容器·milvus
小夏子_riotous36 分钟前
Docker学习路径——8、Dockerfile
linux·运维·docker·容器·系统架构·centos·运维开发
:12138 分钟前
java数组2
java·算法·排序算法
2601_9552564740 分钟前
服务器日志管理最佳实践:logrotate配置详解、云日志服务对比与Docker日志限制方案
运维·服务器·docker