Ruby on rails 如何重新启动Phusion Passenger单机版?

Ruby on rails 如何重新启动Phusion Passenger单机版?,ruby-on-rails,passenger,Ruby On Rails,Passenger,必须先让乘客停车,然后再启动 或者我仍然可以通过触摸tmp/restart.txt来执行此操作?是的,您可以通过触摸tmp/restart.txt来重新启动它。在/etc/init.d中创建脚本: $ sudo nano /etc/init.d/YOUR_SERVICE_NAME 然后,根据需要更改参数 #!/bin/sh ### BEGIN INIT INFO # Provides: <NAME> # Required-Start: $local_fs $

必须先让乘客停车,然后再启动
或者我仍然可以通过触摸tmp/restart.txt来执行此操作?

是的,您可以通过触摸tmp/restart.txt来重新启动它。

在/etc/init.d中创建脚本:

$ sudo nano /etc/init.d/YOUR_SERVICE_NAME
然后,根据需要更改参数

#!/bin/sh
### BEGIN INIT INFO
# Provides:          <NAME>
# Required-Start:    $local_fs $network $named $time $syslog
# Required-Stop:     $local_fs $network $named $time $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Description:       <DESCRIPTION>
### END INIT INFO

start() {
  echo  'Starting service…' >&2
  /bin/bash -l -c 'cd /var/www/myapp/current && passenger start --daemonize -e [staging | production | development ] --ruby path/to/your/bin/ruby'

  echo 'Service started' >&2
}

stop() {
  echo 'Stopping service…' >&2
  passenger stop /var/www/myapp/current
  echo 'Service stopped' >&2
}

status() {
 passenger status /var/www/myapp/current
}


case "$1" in
  start)
    start
   exit 0
    ;;
  stop)
    stop
    exit 0
    ;;
  status)
    status
    exit 0
 ;;
  restart)
    stop
    start
   exit 0
   ;;
  *)
    echo "Usage: $0 {start|stop|restart|status}"
esac
然后测试它:

/etc/init.d/YOUR_SERVICE_NAME start
您可以将设置为使用系统重新启动:

$ sudo update-rc.d YOUR_SERVICE_NAME defaults

我已经使用standalone有一段时间了,我从来没有想到这会起作用。如果您正在使用capistrano,您可能需要从“当前”目录之外启动乘客服务器,而不是通过
passenger start current
运行passenger。明白你说的触摸是什么意思吗?
$ sudo update-rc.d YOUR_SERVICE_NAME defaults