linux部署nuxt.js项目
一、服务器安装数据库mongodb、node 和pm2依赖
1、在usr路径下新建soft目录,存放安装的软件。
mkdir soft
2、在soft目录下新建mongodb目录
mkdir mongodb
3、然后在mongodb目录下安装
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-4.4.0.tgz
tar zxf mongodb-linux-x86_64-rhel80-4.4.0.tgz // 解压
mv mongodb-linux-x86_64-rhel80-4.4.0 mongdbServer //修改短名
4、进入mongodbServer新建datas目录、log目录、etc目录,
datas存放数据,log存放日志,etc配置文件。
进入etc 执行 vim mongo.conf 命令,在文件里面写入如下配置:
dbpath=/usr/soft/mongodb/mongodbServer/datas //创建的mongodb数据的存储地址 logpath=/usr/soft/mongodb/mongodbServer/log //创建的日志存储地址 port=27017 // 端口 fork=true // 设置后台运行 journal=false storageEngine=mmapv1
写完后:wq保存退出。
启动 mongodb服务
./mongod --config /usr/soft/mongoodb/mongodbServer/etc/mongodb.conf
二、服务器安装node
安装
wget https://nodejs.org/dist/v12.18.3/node-v12.18.3-linux-x64.tar.xz // 下载 tar -xvf node-v12.18.3-linux-x64.tar.xz // 解压 mv node-v12.18.3-linux-x64 node-v12.18.3 // 改短名
配置
需要创建软链接,以便全局使用
sudo ln -s /usr/soft/node/node-v12.18.3/ bin/node /usr/bin/node sudo ln -s /usr/soft/node/node-v12.18.3/ bin/npm/usr/bin/npm
使用node -v 查看node版本号
三、服务器安装pm
安装
npm install -g pm2 // 全局安装
创建软连接
ln -s /usr/soft/node/node-v12.18.3/bin /usr/local/bin
查看进程
pm2 list
四、部署前端代码
1、项目先执行npm run build 打包好
除了node_modules文件,其余的都放进压缩包
2、在node目录下新建node_project/myblog目录存放项目
3、上传
rz -y //选择压缩文件 unzip myblog.zip //解压 npm install production //安装依赖
如下:
4.使用pm2 启动项目
pm2 start npm --name "myblog" -- run start
5.启动成功没有问题的话,可以设置开机启动项目
pm2 save #保存当前开机启动列表
pm2 startup #设置开机启动
五、部署nodejs代码
除了node_modules文件夹,其余的文件压缩打包。
1、在linux服务器上新建myblogServer文件夹
cd node_project
mkdir myblogServer
2、然后通过 rz -y 命令上传压缩好的文件
3、再通过 unzip mybogserver.zip 命令解压文件。
4、再通过执行 npm install -production 安装依赖。
5、通过ls 命令查看文件。
如下:
6、启动node服务
启动node 服务需要使用 nodemon app.js 命令,所以需要下载配置nodemon。
npm install nodemon --save -g
配置nodemon
ln -s /usr/soft/node/node-v12.18.3/bin/nodemon /usr/local/bin/nodemon
启动
nodemon app.js
这样启动的命令当退出的时候服务也会停掉,可以通过pm2后台运行来解决,具体看这篇文章介绍https://www.cnblogs.com/SimonHu1993/p/11646709.html
pm2 star app.js
pm2 save
pm2 startup
# 创建开机自启动命令
六、配置 nginx 代理服务
这个是我的组长帮我配置的。当时我需要做公司的项目比较忙,就没有管。
不积跬步无以至千里