Ruby on rails 如何在Rails 5中启动服务器之后立即运行ruby脚本

Ruby on rails 如何在Rails 5中启动服务器之后立即运行ruby脚本,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有两个ruby脚本需要在服务器运行时运行 目前,我使用分离的屏幕分别运行它们,但我希望在rails服务器启动的同时启动它们 我如何整合它们,从而实现这种行为?你试过Foreman gem吗?它将允许您创建一个简单文件(Procfile),您可以在其中指定应同时启动的所有进程 我通常在项目的根目录中创建一个名为Procfile.dev的文件,例如: web: bundle exec rails server thin start -p 4000 mail: mailcatcher -f your

我有两个ruby脚本需要在服务器运行时运行

目前,我使用分离的屏幕分别运行它们,但我希望在rails服务器启动的同时启动它们


我如何整合它们,从而实现这种行为?

你试过Foreman gem吗?它将允许您创建一个简单文件(Procfile),您可以在其中指定应同时启动的所有进程

我通常在项目的根目录中创建一个名为Procfile.dev的文件,例如:

web: bundle exec rails server thin start -p 4000
mail: mailcatcher -f
your_script: instructions
然后启动Rails应用程序,如下所示:

foreman start -f Procfile.dev
使用该命令,Foreman将执行文件上的所有进程

您应该在本地安装gem,而不是在gem文件中安装


这看起来很有希望,我忘了提到这个脚本必须在服务器运行时保持运行,它们在被调用时不会停止,foreman会允许这种行为吗?它是什么类型的脚本?它是一个使用
ruby mqtt
gem的mqtt订户。基本上,它会侦听mqtt协议发布者,当发出主题时,订阅者会被编程为侦听它执行一些与rails应用程序交互的代码。我认为它应该可以工作,但您应该测试它,安装gem并创建Procfile。不需要花很长时间来设置。这是正确的答案,工作起来很有魅力,标记为正确和向上投票。