Search code examples
configpassengerphusion

'Passenger 'command does not show running instance


I'm running my webserver using Passenger Standalone. I've been restarting the app as required after changes using passenger-config restart-app, which seems to work fine. If I run passenger-status, I see:

version : 5.0.30
Date    : 2017-02-13 20:15:49 -0800
Instance: ppGvpt93 (nginx/1.10.1 Phusion_Passenger/5.0.30)

----------- General information -----------
Max pool size : 6
App groups    : 1
Processes     : 1
Requests in top-level queue : 0

----------- Application groups -----------
/home/ubuntu/folder1/AppRoot/public (production):
  App root: /home/ubuntu/folder1/AppRoot
  Requests in queue: 0
  * PID: 29006   Sessions: 0       Processed: 0       Uptime: 1m 46s
    CPU: 0%      Memory  : 18M     Last used: 1m 46s ago

Similarly, when I run passenger-config list-instances, I see:

Name                       PID      Description
--------------------------------------------------------------------------
ppGvpt93                   1396     nginx/1.10.1 Phusion_Passenger/5.0.30

However, within /home/ubuntu/folder1/AppRoot, when I run passenger status, I see:

Phusion Passenger Standalone is not running, according to PID file /home/ubuntu/folder1/AppRoot/tmp/pids/passenger.80.pid

What exactly is the difference between passenger-config and passenger, and why can I not see the running instance using the passenger status command? The reason this came up is I wanted to activate some Passenger configuration changes (specifically, add an environment variable to Passengerfile.json), but according to the documentation:

Restarting an application does not activate any Passenger Standalone configuration changes. You have to restart Passenger Standalone for Passenger Standalone configuration changes to take effect.

As a result, whereas passenger-config restart-app is working for most things, it's not working for this task.


Solution

  • Turns out this was nothing more than a user permissions problem (i.e. I needed to run which passenger on ubuntu, and then run /path/to/passenger on root), because I suppose a non-root user cannot listen on low port numbers.