Ubuntu puma-manager.conf 自定义服务 Job 启动失败

问题描述

我有一个 Ubuntu 14 服务器,我在其中运行 Ruby on Rails 应用程序,我想创建一个服务,该服务将在重新启动时自动启动 Rails 服务器。这个服务应该允许我在后台运行 Puma 服务器,作为一个守护进程。

直到后来apt-get update & apt-get upgrade我才能运行:

bundle exec puma -C config/puma.rb -b unix:/home/appname/site/shared/tmp/sockets/appname-puma.sock -d

-d(守护进程)允许我在后台运行该进程,但现在此标志不再可用。如果我在启动服务器时添加:-d 标志,Puma 将不会启动。

遵循本教程:https://gist.github.com/0x263b/683c5d09b1cbf4240884491696eb5e46

我创建了以下文件:/etc/ini/puma-manager.conf

description "Manages the set of puma processes"

# This starts upon bootup and stops on shutdown
start on runlevel [2345]
stop on runlevel [06]

pre-start script
    logger -t "puma-manager" "Starting Rails APP"
    cd /home/appname/site/current
    exec bundle exec puma -C config/puma.rb -b unix:/home/appname/site/shared/tmp/sockets/appname-puma.sock
end script

当我运行时:service puma-manager start 我收到以下错误:Job failed to start

我也尝试使用 sudo 运行,但收到​​相同的消息。

在:/var/log/upstart/puma-manager.log 我看到错误:

/proc/self/fd/9: 4: cd: can't cd to /home/appname/site/current

即使我为 cd 输入了不同的有效路径,也会出现同样的错误。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)