https://www.cnblogs.com/dadonggg/p/11071182.html
PM2常用命令
npm run build && pm2 start "npm run start" --watch -n 官网
PM2 自动部署
1、生成 pm2 配置文件
运行后会在项目根目录生成 ecosystem.config.js 文件
pm2 init
2、生成后的ecosystem.config.js文件
module.exports = {
apps: [
{
name: "my-app",
autorestart: true,
//这里放npm运行命令,nuxt的命令npm run start
script: "server/index.js",
// 开发环境配置
env: {
NODE_ENV: "development"
},
// 生产环境配置
env_production: {
NODE_ENV: "production"
},
// 测试环境配置
env_test: {
NODE_ENV: "production"
}
}
],
//这个类似于jenkins的自动化部署,可以不用它,用Jenkins
deploy: {
dev: {
// 服务器操作用户
user: "root",
// 服务器ip
host: "1.2.3.4",
ref: "origin/master",
repo: "https://github.com/faner11/angular-case.git",
path: "/root/my-app",
"post-deploy":
"rm -rf node_modules && npm install && npm run build && pm2 startOrReload ecosystem.config.js --env production"
}
};
post-deploy中做了哪些操作 + rm -rf node_modules 删除 node_modules + npm install 重新安装包 + npm run build 运行打包 + pm2 startOrReload ecosystem.config.js --env production pm2 启动应用
3、初始化项目并发布
- 本机初始化远程服务器上的项目pm2 deploy dev setup,命令中的dev是在上面配置文件中写的部署环境的名称
- git 提交代码,git push origin master将代码提交至远程仓库
- 部署项目pm2 deploy dev,这个命令执行后服务器把前面从本机提交至 git 仓库上的最新代码拉下拉,并且运行post-deploy中的命令。一般没什么问题的话,经过这几步操作,就能部署成功了
PM2的安装
本地安装
npm install -g pm2
centos中安装pm2
在远程服务器中安装,不会立马就可以生效