第一步打包nuxt项目引言:需要准备一台云服务器(本人是centos 7.6) + nuxt项目
- 在项目的根目录下,执行打包命令
npm run build 或者你自定义的各种环境的打包命令npm run xxx
我这里是分环境了
打包完毕得到最新的.nuxt包
将部署nuxt需要的服务进行上传到服务器中- 一般nuxt项目进行部署需要四个文件(夹):.nuxt、static 、nuxt.config.js、package.json
注意:.nuxt文件是以.开头的,属于隐藏文件,mac电脑快捷键shift+command+. 可以显示出隐藏文件;windows的话查看文件夹选项,勾上显示隐藏文件
- 由于我们的项目在nuxt.config.js中手动依赖的其他文件,在打包过程中不会进行打包,所以需要把手动依赖的文件也要上传到服务器中
nuxt.config.js中引入env(env环境变量配置)
- 将以上的文件都需要上传到服务器上的某个文件夹下,我用的上传服务器用的可视化ssl连接工具(mac可以用finalShell,windows可以使用XShell,也可以登录云服务器的网页端的shell),并且在服务中切换至相应的目录,执行npm install
注意:服务器上得提前有相应的node环境,一般需要与本地的开发node版本一致。 - 没有node的话可以通过yum install nodejs yum install npm(yum安装nodejs不会带npm),安装指定版本的node,可以通过n模块安装npm install -g n
这是我的版本
- 首先进入文件目录,启动打包后的文件 npm run start 或者自定义的命令,端口号可以自己设置,默认3000
- 注意一点需要在云服务器的控制台中的安全组放通TCP:3000 端口
- 打开一个新窗口。下载yum install curl,测试是否可以访问
# 如果说响应了html代码,就代表成功 curl http://loaclhost:3000/利用pm2 守护服务
- 先下载pm2 npm install -g pm2
- 进入当前项目目录,运行以下命令
pm2 start --name 服务的名字 -- run start-test # 注意:run前面有空格 # run后面是package.json中的执行脚本命令。例如npm run start,那么你就写-- run start,这里我是test环境所以我配置了一个测试环境的命令
- 查看进程 ps -ef | grep node
也成功跑在了8888端口.可以直接用ip+端口访问
- 不会安装nginx的话。nginx安装使用,按照提示一步一步来就ok
- 在域名DNS解析出一个子域名出来或者主域名也可以,将记录值改成服务器的公网ip(有条件的内网地址也可以)
- 接下来就是配置nginx.conf了
server {
listen 80;
server_name 域名地址;
location / {
proxy_pass http://127.0.0.1:8888;
}
}
- 上面是http服务。配置完毕后重启nginx -s reload



