首页 > 系统相关 >Docker 搭建 Nginx 及部署 静态vue项目 以及 映射静态资源

Docker 搭建 Nginx 及部署 静态vue项目 以及 映射静态资源

时间:2023-02-01 23:25:07浏览次数:66  
标签:容器 web vue nginx 静态 apps Nginx docker

一、Docker 搭建 Nginx 

参考

https://www.cnblogs.com/mangoubiubiu/p/16796373.html

二、部署 静态vue项目

1、将你打好的包上传至服务器 

2、修改nginx配置 

           #管理台
               location ~ /{
                root /apps/web/zeal-admin/dist;
                try_files $uri $uri/ /index.html;
                index  index.html index.htm;
               }

3、访问链接 http://192.168.56.15/index

你以为这就完事了? 不对  这个时候你会很惊喜的发现 报 404

为什么会报404?

静态vue 项目 虽然放到了宿主机的目录 , 但是容器里面这个目录有吗 ? nginx配置  root /apps/web/zeal-admin/dist; 是映射的容器里面的文件路径,你又没有配数据卷映射  容器里面当然没有这个路径

4、配置数据卷映射 映射静态 vue项目

docker run -p 80:80 --name nginx \
 -v /apps/docker/nginx/html:/usr/share/nginx/html \
 -v /apps/docker/nginx/logs:/var/log/nginx \
 -v /apps/docker/nginx/conf:/etc/nginx \
 -v /apps/web/images:/apps/web/images \
  -v /apps/web/zeal-admin:/apps/web/zeal-admin \
 -d nginx:1.10

再次访问   http://192.168.56.15/index

注意 如果你的 css等样式没有加载  要在http块那里配上以下2个配置

 include /etc/nginx/mime.types;

default_type application/octet-stream;

三、映射静态资源

如果静态资源和vue项目 在一台nginx上同时代理 建议静态资源和 vue项目 各用一个端口,为什么要各用一个端口 因为如果vue项目是管理台这种的话  没有登录情况访问任意地址就被转发到了登录页  静态资源就访问不到了

1、将你的静态资源包上传至服务器 

略过

2、修改nginx配置 

server {
            #监听的端口,这里为80
                listen       8078;
                #server_name就是域名,
                server_name  localhost;
              #静态资源
              location ~ /images/{
               root /apps/web/;
               autoindex on; #列出images目录
              }

        }

3、访问链接 http://192.168.56.15:8078/images/

这时候你会发现 报错了

无法访问此网站

192.168.56.15 拒绝了我们的连接请求。

 为什么呢 ? 因为docker 要配端口映射

docker run -p 80:80 -p 8078:8078 --restart=always --name nginx \
 -v /apps/docker/nginx/html:/usr/share/nginx/html \
 -v /apps/docker/nginx/logs:/var/log/nginx \
 -v /apps/docker/nginx/conf:/etc/nginx \
 -v /apps/web/images:/apps/web/images \
  -v /apps/web/zeal-admin:/apps/web/zeal-admin \
 -d nginx:1.10

 SUCCESS !!!!!

四、注意:每次修改Nginx配置 要重启容器 

docker stop 容器id前三位   停掉容器

docker rm 容器id前三位      移除容器

docker start 容器id前三位    启动容器

docker restart 容器id前三位  重启容器

 

 

 

 

标签:容器,web,vue,nginx,静态,apps,Nginx,docker
From: https://www.cnblogs.com/mangoubiubiu/p/17084471.html

相关文章

  • Vue、React 区分生产环境和开发环境
    1.手动切换exportconstBASE_URL='http://codercba.com:9002'//exportconstBASE_URL='http://codercba.prod:9002'exportconstTIME_OUT=100002.依赖当前......
  • vue+elementui实现tab多表单提交
    使用场景:同页面中下tab栏切换多个form表单组件,只有一个提交按钮,各组件下的表单数据分别提交,tab栏的兄弟组件传值。实现方式:父组件通过两次调用$refs获取子组件的方法。......
  • Nginx 动态 转发 配置
    根据url转发任何求情http求情http://localhost/proxy/http://baidu.com/会访问:http://baidu.comhttps求情http://localhost/proxy/https://baidu.com/会访问:http......
  • nginx agent 来自官方的nginx 配置管理&监控方案
    我以前介绍过使用git+api模式的nginx配置管理,同时还介绍过一个基于graylog的日志收集方案,nginxagent是nginx官方提供的nginx配置以及metrics监控解决方案包含的特......
  • vue
    产生背景​​ 播报​​随着​​手机摄像头​​的发展,越来越多的人开始使用手机拍照和摄像。摄像一般来说要比拍照门槛高,但是视频传播的信息量又远大于照片。VUE就诞生在这......
  • 转载 Nginx 一个高性能的HTTP和反向代理服务器
    本文只针对Nginx在不加载第三方模块的情况能处理哪些事情,由于第三方模块太多所以也介绍不完,当然本文本身也可能介绍的不完整,毕竟只是我个人使用过和了解过,欢迎留言交流。......
  • vue 中 css 的全局污染问题
    问题场景:通过一个入口文件index.js,export几个自定义的vue组件,如果其中一个组件中有全局的样式,那么 import其中任一个vue组件之后,全局的样式就会被引入,间接的造成......
  • vue3 + vite 报错处理
    TypeError:vite.defineConfigisnotafunction执行命令:npminstall@vitejs/plugin-vue-D config里面配置代码:importvuefrom'@vitejs/plugin-vue'exportdefa......
  • 书城8 - Vue&Axios
    1.Vue{{}}-相当于innerTextv-bind:attr绑定属性值。例如,v-bind:value-绑定value值简写::valuev-model双向绑定v-model:value,简写v-modelv-if,v-......
  • 手写一个audio播放器,实现歌曲切换,列表歌曲循环,音量调节等 vue
    1<template>2<divclass="wrapper">3<svg4t="1673833915638"5class="iconrotateIcon"6viewBox="0010241024"7......