【问题标题】:Add gem based on server name根据服务器名称添加 gem
【发布时间】:2014-05-22 19:48:41
【问题描述】:

所以我使用 capistrano 部署到两个单独的服务器。

我只想将 newrelic 添加到其中一台服务器,但找不到基于主机名的方法。有谁知道做这样的事情的方法

if (hostname==someserver)
  gem 'newrelic_rpm'
end

谢谢!

【问题讨论】:

    标签: ruby ruby-on-rails-3.2 gem rubygems bundler


    【解决方案1】:

    正确的方法是为服务器使用两种不同的环境,就像developmentproduction。默认情况下这些是预先配置的,但您可以添加任意数量的环境并为其命名。然后你可以在你的机器上设置环境

    export RAILS_ENV=server1
    

    在另一台机器上

    export RAILS_ENV=server2
    

    您需要如何设置RAILS_ENV 将取决于您的特定服务器设置;例如,Passenger has a dedicated option for this。然后,您可以在 Gemfile 中将这些环境用作组:

    group :server1
      gem 'only_on_server1'
    end
    
    group :server2
      gem 'only_on_server2'
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-09
      • 2014-03-21
      • 2013-01-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多