Passenger 5 / Capistrano

2.1k Views Asked by At

I'm trying to deploy Rails application to VPS via Capistrano. I have passenger standalone installed on the VPS and using capistrano-passenger gem with default configuration.

Running cap deploy produces the following output:

DEBUG [3197887c] Finished in 0.046 seconds with exit status 0 (successful).
DEBUG [fdb1fe0b] Running /usr/bin/env passenger -v as [email protected]
DEBUG [fdb1fe0b] Command: cd /var/www/my_app/releases/20150625021829 && /usr/bin/env passenger -v
DEBUG [fdb1fe0b]    Phusion Passenger version 5.0.11
DEBUG [fdb1fe0b]    
DEBUG [fdb1fe0b]    
DEBUG [fdb1fe0b]    "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
DEBUG [fdb1fe0b]    
DEBUG [fdb1fe0b] Finished in 0.066 seconds with exit status 0 (successful).
INFO [8557b41e] Running /usr/bin/env sudo /usr/bin/env passenger-config restart-app /var/www/my_app --ignore-app-not-running as [email protected]
DEBUG [8557b41e] Command: cd /var/www/my_app/releases/20150625021829 && /usr/bin/env sudo /usr/bin/env passenger-config restart-app /var/www/my_app --ignore-app-not-running
DEBUG [8557b41e]    *** ERROR: Phusion Passenger doesn't seem to be running. If you are sure that it
DEBUG [8557b41e]    
DEBUG [8557b41e]    is running, then the causes of this problem could be one of:
DEBUG [8557b41e]    
DEBUG [8557b41e]    
DEBUG [8557b41e]     1. You customized the instance registry directory using Apache's
DEBUG [8557b41e]    
DEBUG [8557b41e]        PassengerInstanceRegistryDir option, Nginx's
DEBUG [8557b41e]    
DEBUG [8557b41e]        passenger_instance_registry_dir option, or Phusion Passenger Standalone's
DEBUG [8557b41e]    
DEBUG [8557b41e]        --instance-registry-dir command line argument. If so, please set the
DEBUG [8557b41e]    
DEBUG [8557b41e]        environment variable PASSENGER_INSTANCE_REGISTRY_DIR to that directory
DEBUG [8557b41e]    
DEBUG [8557b41e]        and run this command again.
DEBUG [8557b41e]    
DEBUG [8557b41e]     2. The instance directory has been removed by an operating system background
DEBUG [8557b41e]    
DEBUG [8557b41e]        service. Please set a different instance registry directory using Apache's
DEBUG [8557b41e]    
DEBUG [8557b41e]        PassengerInstanceRegistryDir option, Nginx's passenger_instance_registry_dir
DEBUG [8557b41e]        

I am using default config. Anything I can do to make it work?

4

There are 4 best solutions below

1
On

I recently ran into this and the cause in my case was that the deploy user needed sudoer privileges for the passenger-config command.

0
On

Do you have gem 'passenger' in your Gemfile ?. Make sure that the passenger gem is installed on your VPS. Also, if you need Nginx as the webserver then run the following command on your VPS rvmsudo passenger-install-nginx-module . Let me know if you need further help.

0
On

First of all you should make sure passenger is currently running on your server, so try: rvmsudo bundle exec passenger start. If this worked, try to set:

set :passenger_in_gemfile, true
set :passenger_restart_with_sudo, true

and then check the setup with cap production passenger:restart.
(applicable to Passenger Standalone installed via Gemfile).

1
On

Use set :passenger_restart_with_touch, true as a workaround on Passenger 5.

It's a known problem as described in https://github.com/capistrano/passenger/issues/26