我正在使用PM2部署脚本将代码部署到我的FreeBSD服务器。
步骤1:pm2部署生产设置。成功执行安装命令。预设脚本也可以使用。
[步骤2:pm2部署生产。它给出了部署后挂接失败的错误。但是,pre-deploy-local命令正在运行。
->部署到生产环境->主机****○部署来源/主服务器○执行本地部署前这是本地执行的命令○钩子预部署○快进高手您的分支机构的最新信息是“来源/主”。已经在“主人”上来自git。*** / **分支主管-> FETCH_HEAD已经是最新的。○执行部署后npm install && pm2 start
歧义输出重定向。部署后挂钩失败部署失败
此外,如果我从本地计算机运行pm2部署生产执行程序“ npm install && pm2 start”,则可以正常工作。
PM2生态系统.config.js
apps: [{
name: 'Myapp',
script: 'app.js',
env: {
NODE_ENV: 'development'
},
env_production: {
NODE_ENV: 'production'
}
}],
deploy: {
production: {
user: 'user',
host: 'myhost',
ref: 'origin/master',
repo: 'git@***/**',
path: 'Some/Path',
'ssh_options': ["ForwardAgent=yes","StrictHostKeyChecking=no"],
"pre-setup" : "pkg install git && npm install -g pm2@latest",
"pre-deploy-local" : "echo 'This is a local executed command'",
"post-deploy" : "npm install && pm2 start",
}
}
看起来您似乎缺少额外的步骤来构建文件?
post-deploy" : "npm install && npm run build && pm2 start"