服务器启动时自动rails app启动?

时间:2009-09-03 17:08:34

标签: ruby-on-rails macos

如何在Mac OS X服务器启动时自动启动rails ruby​​ on rails?

感谢。

2 个答案:

答案 0 :(得分:2)

我建议使用passenger,这会让所有这些令人头疼。它甚至有一个OS-X control panel,让我的生活变得更轻松。

答案 1 :(得分:1)

好的,找到了答案。

首先在/Library/LaunchDaemons/my.startup.rails.app.plist中创建文件

这是一个xml文件,其结构如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"     "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Disabled</key>
    <false/>
    <key>KeepAlive</key>
    <false/>
    <key>Label</key>
    <string>my.startup.rails.app</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Library/WebServer/start.sh</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>StartInterval</key>
    <integer>86400</integer>
</dict>
</plist>

其中/Library/WebServer/start.sh包含用于启动rails app的shell脚本。

然后在计算机启动时启动它:

sudo launchctl load -w /Library/LaunchDaemons/my.startup.rails.app.plist

完成!