好吧,我错了…… 又七折腾八折腾,把自己弄晕了……
我用一键部署,以前,基本只需要cap production deploy
就万事 OK 了,也不用自己启动 passsenger 的。
但这次,总提示我:There are no Phusion Passenger-served applications running whose paths begin with '/app/www/my_project'.
没法,只好手动启动 passenger 了,用了一句
rvmsudo passenger start -e production -p 80 --user="root"
成功倒是成功了。可以从外网访问了。 但一旦我部署新的版本,它会仍然指向旧的版本,而不是 current
$ passenger-status
Version : 5.0.17
Date : 2015-09-09 17:35:03 +0800
Instance: H21U8gfz (nginx/1.8.0 Phusion_Passenger/5.0.17)
----------- General information -----------
Max pool size : 6
App groups : 1
Processes : 1
Requests in top-level queue : 0
----------- Application groups -----------
/app/www/my_project/releases/20150909024630/public (production):
App root: /app/www/my_project/releases/20150909024630
Requests in queue: 0
* PID: 28542 Sessions: 0 Processed: 14 Uptime: 40m 11s
CPU: 0% Memory : 100M Last used: 17m 14s ago
怎样才能让 passenger 指向 current?
而且我现在也知道怎么 stop,好像用rvmsudo passenger stop
不生效,好晕好晕……
注:nginx 配置我是指向了正确位置的
root /app/www/my_project/current/public;
passenger_enabled on;
rails_env production;
hold 不住了……明明以前一键部署很顺利的,现在不知道为什么……是 cap 版本升级了?passenger 版本升级了?还是 nginx 版本升级了?多了很多新的东西?
我尝试进 current 目录下手动启动 passenger,它还是具体当前 current 指向的具体版本,下次 current 指向的版本更新,passenger 指向的版本不更新。
如果尝试在项目目录下手动启动 passenger,会显示
$ sudo -E passenger-status
Version : 5.0.17
Date : 2015-09-10 09:54:12 +0800
Instance: n0pR0FhO (nginx/1.8.0 Phusion_Passenger/5.0.17)
----------- General information -----------
Max pool size : 6
App groups : 0
Processes : 0
Requests in top-level queue : 0
----------- Application groups -----------
根本没有指向具体一个 app
capistrano 自动启动 passenger 的机制是怎样的么?以前我都是 cap production deploy 时它自动就启动的啊,现在为什么不启动了?