docker-compose 配置nginx

前言

前端打包的dist文件在宿主机,nginx运行在docker-compose

问题

nginx.conf 在本地配置可以生效,但是链接到容器就报错

基于本地的nginx运行,本地nginx.conf 如下

server {
    listen 8081;
    location / {
        root /usr/local/software/testweb/dist; # 指向你的Vue应用解压后的目录,宿主机目录
        try_files $uri $uri/ /index.html; # 尝试直接找到文件,如果找不到则回退到index.html(Vue路由需要)
    }

}

基于容器运行,映射到容器的nginx.conf配置如下

server {
    listen 80;
    root /usr/share/nginx/html; #容器内的地址
    location / {
        try_files $uri $uri/ /index.html; # 尝试直接找到文件,如果找不到则回退到index.html(Vue路由需要)
    }

}

容器内部目录截图如下

容器的docker-compose配置如下

version: '3.8'
services:
  nginx:
    image: nginx:latest
    ports:
    volumes:
      - /usr/local/software/dist:/usr/share/nginx/html 
这里是将前面的本地dist路径,挂载到容器,然后上面的nginx.conf 的 root /usr/share/nginx/html; 容器内的地址,才会生效
相关推荐
winyh523 分钟前
Vite 打包后Nginx部署配置
运维·nginx
钢板兽28 分钟前
Java后端高频面经——JVM、Linux、Git、Docker
java·linux·jvm·git·后端·docker·面试
运维小贺2 小时前
Nginx常用的模块
运维·nginx·正则表达式
海鸥813 小时前
在 k8s中查看最大 CPU 和内存的极限
linux·容器·kubernetes
梵法利亚3 小时前
Ubuntu-docker安装mysql
mysql·ubuntu·docker
rkmhr_sef4 小时前
Nginx反向代理出现502 Bad Gateway问题的解决方案
运维·nginx·gateway
irisMoon065 小时前
mac本地代理nginx,解决跨域问题
linux·nginx·macos
猴的哥儿8 小时前
Ubuntu 22.04 LTS 入门教学文档
linux·运维·ubuntu·docker
海鸥8112 小时前
查看k8s集群的资源使用情况
云原生·容器·kubernetes
云上艺旅13 小时前
K8S学习之基础十八:k8s的灰度发布和金丝雀部署
学习·云原生·容器·kubernetes