当前位置:   article > 正文

Docker-挂载数据卷_docker 挂载数据卷

docker 挂载数据卷

通过 -v 选项来挂载一个数据卷到某个容器目录

一、命令详解

docker run --name containerName -p 80:80 -v volumeName:targetContainerPath -d imagesName
  • 1

命令解读:
docker run:命令本身
--name containerName:给容器起一个名字
-p 80:80:将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口,就是将完全隔离的容易透出来一个小口,这样我们可以透过这个小口来对容器进行访问,宿主机端口一般可以任意写,只要没被占用,但是容器端口往往是由容器本身决定
-v volumeName:targetContainerPath将 volumeName 数据卷挂载到容器内的 targetContainerPath 目录中
-d后台运行
images:镜像名称,没有加标签,默认为最新版本

二、实例

需求:创建一个 nginx 容器,修改容器内的 html 目录内的 index.html 内容

  在之前的博客中,进入Nginx容器,我们已知 nginx 的 html 目录所在位置 /usr/share/nginx/html ,把这个目录挂载到 html 这个数据卷上我们就可以使用 Windows 上的高级开发工具修改其中的 index.html 文件上的内容了。

1.创建容器并挂载数据卷到容器内的 html 目录

如果挂载的数据卷不存在 docker 会自动创建这个数据卷

docker run --name my-nginx -p 80:80 -v html:/usr/share/nginx/html -d nginx
  • 1

在这里插入图片描述

2.查看挂载点

docker volume inspect html
// 或者 docker inspect html 
  • 1
  • 2

在这里插入图片描述

3.进入 html 数据卷所在位置,并修改 index.html 内容

cd /var/lib/docker/volumes/html/_data/
  • 1

进入 html 数据卷所在位置,可以发现已经被容器 my-nginx 挂载了
在这里插入图片描述

1.可以使用 vim 进行编辑
2.也可以借助 FinalShell 使用 IDE 来编辑(Win11请往下先看完序号三

在这里插入图片描述

使用VSCode打开后,编辑内容:

在这里插入图片描述


**编辑完后直接在VSCode保存即可**

4.打开浏览器验证

可以看到,我们在数据卷内修改,容器内也会得到修改!

在这里插入图片描述

三、Windows11 使用 FinalShell 打开方式为系统关联的设置

  之前使用 Windows10 系统时还可以选择使用什么软件打开,但是最近使用 Windows11 时却发现直接将 html 文件用浏览器打开了,这就很苦恼,因为我想要编辑呀!
  我们可以通过修改系统的默认打开方式来解决:

在这里插入图片描述


在这里插入图片描述

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号