docker nginx 部署 vue项目

简介: docker nginx 部署 vue项目

一、vue项目编译打包


1、更新node更新库

image.png

2、编译打包

npm run build

image.png

该问题的原因是 之前项目代码是在windows环境编译的 现在是在mac环境编译 所以需要下载相应操作系统的编译库

image.png


image.png

编译成功之后 会生成一个dist文件夹

image.png

里面的内容就是即将部署到nginx的静态资源

3、如果想直接启动vue项目

image.png

启动的时候 如果报webpack-dev-server: Permission denied错误

处理方式

a、获取nodejs模块安装目录访问权限 (必须执行)

image.png

b、安装 淘宝镜像 (cnpm)

image.png

c、cnpm -v 如果报sudo: cnpm: command not found

说明此时需要配置下cnpm的环境变量

vim  ~/.bash_profile

export PATH=/Users/mengfanxiao/nodejs/npm_global/bin:$PATH

source ~/.bash_profile

d、sudo cnpm install webpack-dev-server -g

image.png

e、安装相关依赖

e-1、安装vue脚手架

sudo cnpm install -g vue-cli

image.png

e-2、安装项目依赖

cnpm install 

image.png

e-3、安装 vue 路由模块vue-router和网络请求模块vue-resource

cnpm install vue-router vue-resource --save

image.png

e-4、启动项目

npm run devcnpm rundev



二、将vue项目部署到docker nginx并实现访问


1、安装最新的nginx

image.png

2、先简单nginx运行起来,方便后面我们拷贝容器内部的nginx配置文件

image.png

3、将容器中的配置文件复制到宿主机上 普通方式搭建的nginx只需要关注nginx.conf配置文件 docker方式搭建的 需要关注2个配置文件 nginx.conf和default.conf

image.png

docker cp ed2f9784a0eb:/etc/nginx/nginx.conf ~/nginx/conf/

docker cp ed2f9784a0eb:/etc/nginx/conf.d/default.conf ~/nginx/conf.d/

4先停止容易 再删除容器 重新启动 (防止端口冲突 修改了下默认端口为7000)

image.png

5、将静态文件放在location指定的目录下

image.png


6、启动容器

docker run -d --name nginx1 -p 7000:7000 -v /Users/mengfanxiao/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /Users/mengfanxiao/nginx/html:/Users/mengfanxiao/nginx/html -v /Users/mengfanxiao/nginx/logs:/var/log/nginx -v /Users/mengfanxiao/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf nginx


-d 后台启动

-name 容器名称

-p宿主机端口7000 指向容器中端口7000

第一个-v表示将宿主机中的nginx.conf替换调容器中的nginx.conf

第二个-v表示将宿主机中的静态资源文件替换调宿主机中的静态资源文件

第三个-v表示容器中的日志也写到宿主机上方便查看日志

第四个-v表示宿主机上的default.conf配置替换掉容器中的default.conf配置


image.png

6、查看启动结果

image.png


7、访问静态资源

image.png

相关文章
|
6天前
|
API UED
升级 Vue3 后,项目的打包体积会有什么变化?
升级 Vue3 后,项目的打包体积会有什么变化?
93 57
|
8天前
|
应用服务中间件 Docker 容器
docker应用部署---Tomcat的部署配置
这篇文章介绍了如何使用Docker部署Tomcat服务器,包括搜索和拉取Tomcat镜像、创建容器并设置端口映射和目录映射,以及如何创建一个HTML页面并使用外部机器访问Tomcat服务器。
docker应用部署---Tomcat的部署配置
|
8天前
|
关系型数据库 MySQL 数据安全/隐私保护
docker应用部署---MySQL的部署配置
这篇文章介绍了如何使用Docker部署MySQL数据库,包括搜索和拉取MySQL镜像、创建容器并设置端口映射和目录映射、进入容器操作MySQL,以及如何使用外部机器连接容器中的MySQL。
docker应用部署---MySQL的部署配置
|
9天前
|
JavaScript
vue项目中使用vue-router进行路由配置及嵌套多级路由
该文章详细说明了如何在Vue项目中配置和使用vue-router进行单页面应用的路由管理,包括设置嵌套路由和实现多级路由导航的示例。
vue项目中使用vue-router进行路由配置及嵌套多级路由
|
5天前
|
JavaScript
vue尚品汇商城项目-day07【vue插件-50.(了解)表单校验插件】
vue尚品汇商城项目-day07【vue插件-50.(了解)表单校验插件】
14 4
|
5天前
|
JavaScript
vue尚品汇商城项目-day07【51.路由懒加载】
vue尚品汇商城项目-day07【51.路由懒加载】
15 4
|
5天前
|
JavaScript
vue尚品汇商城项目-day07【vue插件-54.(了解)生成二维码插件】
vue尚品汇商城项目-day07【vue插件-54.(了解)生成二维码插件】
14 2
|
9天前
|
前端开发 应用服务中间件 nginx
docker部署本地前端项目思路
docker部署本地前端项目思路
23 7
|
6天前
|
API UED
如何实现Vue2项目升级Vue3?
如何实现Vue2项目升级Vue3?
14 1
|
8天前
|
应用服务中间件 nginx Docker
docker应用部署---nginx部署的配置
这篇文章介绍了如何使用Docker部署Nginx服务器,包括搜索和拉取Nginx镜像、创建容器并设置端口映射和目录映射,以及如何创建一个测试页面并使用外部机器访问Nginx服务器。
下一篇
无影云桌面