我有一个新的Rails项目,我决定尝试heroku,部署似乎很容易
我正在开发Windows,所以运行独角兽不是一个选择,但webrick可以用于开发
但是,当它部署时,我想使用独角兽,而heroku完全支持这个
问题是:我必须在我的Gemfile上列出独角兽以便heroku选择它,但是当我这样做并在我的windows dev机器上运行bundle命令(或rails s)时,它会尝试安装unicorn服务器
我试图将独角兽放入制作小组, 组:生产做 宝石'独角兽' 结束 仍然捆绑抱怨,我无法运行开发服务器
答案 0 :(得分:42)
您可以在Gemfile中定位特定平台:
platforms :ruby do # linux
gem 'unicorn'
end
platforms :mswin do
# gems specific to windows
end
有关详细信息,请参阅manpages for gemfile。
答案 1 :(得分:16)
替代解决方案(原始海报非常接近)是
group :production do
gem 'unicorn'
end
然后使用
bundle install --without production
在您的Windows机器上。
Heroku旁注(未经测试)
与接受的答案不同,这不应该导致Heroku忽略您的Gemfile.lock
这是因为Heroku在决定是否生成Windows时会检查您的Gemfile mswin
和mingw
。