Rails如何在开发和生产模式之间切换?

时间:2015-05-08 08:23:37

标签: ruby-on-rails ruby ruby-on-rails-4

如何在开发模式和生产模式之间切换Rails?

如何将数据库部署到生产环境?

5 个答案:

答案 0 :(得分:52)

如果您使用的是Rails 4.2,那么您必须知道rails使用" spring"使它更快。因此,在这种情况下,您可以使用以下命令:

For Development只需运行

Rails 4.2
    bin\rails s
Otherwise
   rails s

生产只需运行

Rails 4.2
    bin\rails s -e production
Otherwise    
    rails s -e production

设置生产数据库 如果生产中的数据库不存在则运行

Rails 4.2
    bin/rake db:create db:migrate RAILS_ENV=production
Otherwise
    rake db:create db:migrate RAILS_ENV=production
    bundle exec rake db:create db:migrate RAILS_ENV=production

如果DB已经存在:

Rails 4.2
  bin/rake db:migrate RAILS_ENV=production
Otherwise
  rake db:migrate RAILS_ENV=production
  OR
  bundle exec rake db:migrate RAILS_ENV=production

此外,如果您想停止弹簧或开始弹簧,请使用以下命令:

 bin/spring stop
 bin/spring start

答案 1 :(得分:14)

使用-e选项启动服务器。

rails server -e production

您无法部署数据库。您需要迁移才能在生产中运行。

答案 2 :(得分:4)

要在开发模式下启动服务器,您只需运行rails s它将以开发模式和数据库启动您的应用。

要以生产模式启动服务器,您需要使用bundle exec rake db:migrate RAILS_ENV=production迁移数据库,然后使用rails s -e productionRAILS_ENV=production rails s

启动生产中的服务器

答案 3 :(得分:1)

在轨道上5+ 转到

config/puma.rb 

您可以找到以下行

environment ENV.fetch("RAILS_ENV") { "development" }

将“开发”更改为“生产”

答案 4 :(得分:0)

如果要在生产环境中运行服务器并在控制台中启用日志,则可以运行:

rails s -C --log-to-stdout -e production