【问题标题】:Run WEBrick as a Windows service将 WEBrick 作为 Windows 服务运行
【发布时间】:2012-07-24 14:22:43
【问题描述】:

如何在后台运行 WEBrick 服务器作为 Windows 服务?我尝试遵循 this 帖子中的建议,但我使用的是 Rails 3,但无法找到与 C:\RUBYAPP\script\server -e production 等效的内容,因为 Rails 3 中不再存在 server 目录。有什么帮助吗?

【问题讨论】:

  • 可能不是一个很有帮助的评论,但我不久前遇到了同样的问题,不得不放弃,因为 Mongrel 不支持 Rails 3 的服务,故事结束。这可能已经改变,但如果您遇到问题,问题可能仍然存在。
  • @pepe,出于这个原因,我目前正在使用 WEBrick,而不是 mongrel。我什至无法让 mongrel 为我运行,更不用说作为服务运行了:/
  • 对不起,我想我读得太快了,我以为你指的是 Mongrel,因为大多数人都使用它。我从未见过将 WEBrick 用作 Windows 服务,但我成功地手动运行了 Mongrel。不过,我最近已经切换到 Thin。如果您正在寻找自动运行服务器并且您并不真正关心它是 Windows 服务,您可以在启动时将其作为后台作业运行。
  • 是的,我意识到 WEBrick 通常不用于生产,但我正在部署到一个非常小的用户池 (
  • 我已经有一段时间没有尝试过了。我曾一度获得了概念验证,但已经有一段时间了。今晚回家后我会做个笔记来研究一下(我想我当时做了一些笔记),明天会告诉你。

标签: ruby-on-rails ruby-on-rails-3 webrick


【解决方案1】:

我从未见过在 Windows 服务中使用 WEBrick,但一种解决方法可能是将 Web 服务器作为后台作业运行。你会这样做:

您需要一个包含 2 条指令的 bat 文件来启动 Web 服务器:

  • cd to_your_absolute_app_path
  • 导轨 s

然后您需要将该 bat 文件转换为 exe 文件。检查this 以获得免费工具。我知道该工具适用于 32 位和 64 位,您可能需要四处寻找合适的。

当您创建 exe 时,请确保选择它作为不可见的应用程序运行。

然后你把exe放在启动文件夹中。那应该这样做。

【讨论】:

  • 仅供参考,我最终将您推荐的工具与NSSM(非吸盘服务管理器)结合使用,将生成的 exe 作为 Windows 服务运行。
  • 事实证明,我需要在几周内为客户启动 Thin,所以这非常方便。非常感谢!
  • 没问题!如果您对此有任何疑问,请告诉我:)
  • 出色的工作!非常感谢。
猜你喜欢
  • 2017-01-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-04
相关资源
最近更新 更多