pm2安装:npm install pm2 -g
pm2启动项?:npm run pm2?
命令启动服务
pm2 start app.js
pm2 start app.js --name app_name命名进程名称
pm2 start app.js --watch --ignore-watch="node_modules"监听当?件变化时重启项?
停?服务
pm2 stop app_name|id|‘all‘
删除服务
pm2 delete app_name|id|‘all‘
重启服务
pm2 restart app_name|id|‘all‘查看进程信息
0秒停机重加载服务
pm2 reload app_name|id|‘all‘
查看进程状态
pm2 [list|ls|status]
查看进程所有信息
pm2 describe app_name|id
根据cpu数?启动最?进程数?
pm2 start app.js -i 0
启动3个进程
pm2 start app.js -i 3
查看?志
pm2 logs [app-name]
清空所有?志?件
pm2 flush
生成配置文件
?命令:pm2 ecosystem
以下为自动化部署文件内容
module.exports = {
apps : [{
name: ‘app‘,
script: ‘./bin/www‘,
watch: ‘.‘,
autorestart: true,
watch: true,
ignore_watch: [ // 不?监听的?件
"node_modules",
"logs"
],
"error_file": "./logs/app-err.log", // 错误?志?件
"out_file": "./logs/app-out.log",
"log_date_format": "YYYY-MM-DD HH:mm:ss", // 给每??志标记?个时间
max_memory_restart: ‘1G‘,
env: {
NODE_ENV: ‘development‘
},
env_production: {
NODE_ENV: ‘production‘
}
}],
deploy : {
production : {
user : ‘root‘,
host : ‘112.126.63.18‘,
ref : ‘origin/master‘,
repo : ‘git@gitee.com:W_007/blog_server_lj.git‘,
path : ‘/usr/local/project/blog_server‘,
ssh_options: "StrictHostKeyChecking=no",
‘post-deploy‘ : ‘npm install && pm2 reload ecosystem.config.js --env production‘,
"env": {
"NODE_ENV": "production"
}
}
}
};
?
linux安装git安装git:
yum -y install git
配置用户信息
git config --global user.name "lijing"
git config --global user.email "125168746@qq.com"? ??
生成ssh key
ssh-keygen -t rsa -C "125168746@qq.com"
?查看密钥:
cat ~/.ssh/id_rsa.pub
在码云设置这个密钥:
? ? ??
结束。
安装pm2
npm i pm2 -g
ln -s /usr/local/node/bin/pm2 /bin/pm2
在git bash 初始化服务器远程文件夹:
pm2 deploy ecosystem.config.js production setup
部署项目:
pm2 deploy ecosystem.config.js production
连接linux服务器免密连接:
scp ~/.ssh/id_rsa.pub root@127.0.0.1:/root/.ssh/authorized_keys
开放防火墙端口:
firewall-cmd --list-ports //查看已开放端口
firewall-cmd --zone=public --add-port=3000/tcp --permanent 开放3000端口
firewall-cmd --reload 重启
在网页测试;
项目打build:
创建文件夹:vue.config.js
module.exports = {
publicPath:‘./‘
}
命令:npm run build
会多一个dist的目录,访问index.html就可以访问成功
把这个目录下的所有文件 copy在ngix的html目录,既可以通过80端口访问成功
原文:https://blog.51cto.com/u_12668701/2989034