首页 > 系统相关 >Docker-nginx数据卷挂载

Docker-nginx数据卷挂载

时间:2024-10-13 20:43:52浏览次数:7  
标签:docker Nginx nginx html conf 挂载 Docker 目录

数据卷(volume)是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。
以Nginx为例,我们知道Nginx中有两个关键的目录:

  • html:放置一些静态资源
  • conf:放置配置文件
    如果我们要让Nginx代理我们的静态资源,最好是放到html目录;如果我们要修改Nginx的配置,最好是找到conf下的nginx.conf文件。
    但遗憾的是,容器运行的Nginx所有的文件都在容器内部。所以我们必须利用数据卷将两个目录与宿主机目录关联,方便我们操作。如图:
    image
    在上图中:
  • 我们创建了两个数据卷:conf、html
  • Nginx容器内部的conf目录和html目录分别与两个数据卷关联。
  • 而数据卷conf和html分别指向了宿主机的/var/lib/docker/volumes/conf/_data目录和/var/lib/docker/volumes/html/_data目录
    这样以来,容器内的conf和html目录就 与宿主机的conf和html目录关联起来,我们称为挂载。此时,我们操作宿主机的/var/lib/docker/volumes/html/_data就是在操作容器内的/usr/share/nginx/html/_data目录。只要我们将静态资源放入宿主机对应目录,就可以被Nginx代理了。
    image
    利用数据卷挂载nginx步骤:
  1. 创建数据卷
    docker volume create nginx_html
  2. 查询数据卷位置
    docker volume inspect nginx_html
    image
    3.创建容器并指定数据卷,注意通过 -v 参数来指定数据卷
    docker run -d --name nginx81 -p 81:80 -v nginx_html:/usr/share/nginx/html nginx
    4.在/var/lib/docker/volumes/nginx_html/_data/ 目录下面添加一个静态文件index.html,文件里填写Hello world
    image
    5.运行http://服务器ip:81/
    image

标签:docker,Nginx,nginx,html,conf,挂载,Docker,目录
From: https://www.cnblogs.com/heimayihao/p/18462936

相关文章

  • Docker常用命令
    #第1步,去DockerHub查看nginx镜像仓库及相关信息#第2步,拉取Nginx镜像dockerpullnginx#第3步,查看镜像dockerimages#结果如下:REPOSITORYTAGIMAGEIDCREATEDSIZEnginxlatest605c77e624dd16monthsago141MBmysql......
  • datart前端单独部署到nginx
    这里假设你的本地可以正常跑起来前端项目,服务器为centos7且已经部署了nginx构建前端工程(frontend文件夹下是前端工程)npmrunbuild:all将构建出来的build文件夹放到服务器一个路径下配置nginx.conf,这里只写了http节点下的server节点怎么配置server{listen3000;......
  • nginx搭建视频下载站
    目录1.前言与介绍 2.atuoindex模块介绍 3.主要的功能 4.下载站基本要求5.具体配置6.做完如上的配置重载服务 7.创建密码文件 8.在windows主机上做域名解析 9.查看统计结果1.前言与介绍 前面的学习中根据nginx的简单的配置实现了根据IP端口和域名实现......
  • Centos7.9安装docker(国内)
    由于不能访问国外网络所以需要修改为阿里云镜像地址sudotee/etc/yum.repos.d/CentOS-Base.repo<<EOF[centos]name=CentOS-\$releasever-Basebaseurl=http://mirrors.aliyun.com/centos/\$releasever/os/\$basearch/gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM......
  • 【云原生技术】Docker容器进阶知识
    文章目录namespace概述一、namespace的基本概念二、namespace的主要作用三、namespace的类型四、namespace的操作五、namespace在容器技术中的应用cgroup一、cgroup的基本概念二、cgroup的主要功能三、cgroup的子系统介绍四、cgroup的应用场景五、cgroup的使用与管理cg......
  • 开发与部署项目依赖管理之旅:Docker和venv区别
    Docker与venv的区别Docker和虚拟环境(venv)都是用于管理依赖关系和隔离环境的工具,但它们服务的目的和特点有所不同。下面是它们的详细比较。虚拟环境(venv)目的:特定于Python:venv专为Python项目设计,用于管理依赖关系并创建隔离环境。依赖管理:用于在项目中管理Python包的安装,不影......
  • 第105天:权限提升-Linux系统&Docker挂载&Rsync未授权&Sudo-CVE&Polkit-CVE
    演示案例Linux-Rsync未授权访问覆盖-本地Linux-Docker组用户挂载目录-本地Linux-Sudo(CVE-2021-3156)-本地Linux-Polkit(CVE-2021-4034)-本地Rsync(未授权访问)Rsync是linux下一款数据备份工具,默认开启873端口https://vulhub.org/#/environments/rsync/common/借助Linux默认......
  • 记一次docker overlay2目录空间占用过高问题
    背景最近需要频繁本地构建镜像以及调试POD,导致磁盘空间告警分析查看当前磁盘使用情况#df-h发现这个目录下占用了不少空间docker常见的造成磁盘告警的原因有,知道原因之后就可以开始清理工作了/var/lib/docker/containers#容器/var/lib/docker/volumes#数据卷......
  • Web集群服务-Nginx
    1.web服务1. WEB服务:网站服务,部署并启动了这个服务,你就可以搭建一个网站2. WEB中间件:等同于WEB服务3. 中间件:范围更加广泛,指的负载均衡之后的服务4. 数据库中间件:数据库缓存,消息对列2. 极速上手指南nginx官网: nginxdocumentation2.1 配置yum源vim......
  • ubuntu 由于插拔移动硬盘导致无法挂载
    如果之前可以使用,但拔出后再连接就无法挂载了,可以尝试以下步骤:检查硬盘状态:运行sudofdisk-l或lsblk命令,确认系统是否识别到了硬盘。文件系统检查:如果是NTFS格式,可以使用ntfsfix来修复。首先,确保安装了ntfs-3g:sudoapt-getinstallntfs-3g然后运行:sudontfs......