如何在生产中的ruby-on-rails应用程序中运行rake?

A j*_*A j 6 ruby postgresql rake ruby-on-rails elasticsearch

我试图弄清楚如何在生产中部署我的ruby-on-rails应用程序.

操作系统是ubuntu,应用程序使用Postgres.我已经设法部署应用程序,并能够登录等...但有一些功能不起作用(我是应用程序和rails的新手).该应用程序使用弹性搜索,我已经安装并且服务正在运行(我可以通过http:// localhost:9200访问该页面).但是当应用程序尝试访问弹性搜索的组件时,我会收到错误.

目录/ app/lib/tasks中有一个rake文件,它有几个文件,其中一个是elasticsearch.rake

namespace :app do
  desc "Bootstraping Elasticsearch index"
  task(:elasticsearch => :environment) do

    Image.__elasticsearch__.create_index! force:true
    Image.import

    CaseStudy.__elasticsearch__.create_index! force:true
    CaseStudy.import

  end
end
Run Code Online (Sandbox Code Playgroud)

正如文件中的描述所说,这引导了弹性搜索索引.
我不知道的是如何在生产环境中运行所有这些?还有其他rake文件,我想知道如何运行它们.

dp7*_*dp7 14

您应该转到生产中项目目录的根路径,然后键入以下命令:

RAILS_ENV=production bundle exec rake app:elasticsearch
Run Code Online (Sandbox Code Playgroud)

注意:

要检查可用的rake任务列表,可以键入 rake -T


Bha*_*oni 6

rake task-name RAILS_ENV=production
Run Code Online (Sandbox Code Playgroud)