【问题标题】:Develop on windows, run unicorn in production on heroku在 windows 上开发,在 heroku 上运行 unicorn 生产
【发布时间】:2012-06-01 14:43:43
【问题描述】:

我有一个新的 Rails 项目,我决定试试 heroku,在那里部署似乎很容易

我是在windows上开发,所以跑unicorn不是一个选择,但是webrick适合开发

但是,在部署方面,我想使用独角兽,heroku 完全支持这一点

问题是:我必须在我的 Gemfile 中列出 unicorn 才能让 heroku 选择它,但是当我这样做并在我的 windows 开发机器上运行 bundle 命令(或 rails s)时,它会尝试安装 unicorn 服务器

我试图把独角兽放在生产组, 组:生产做 宝石“独角兽” 结尾 仍然捆绑抱怨,我无法运行开发服务器

【问题讨论】:

    标签: ruby-on-rails git heroku bundler


    【解决方案1】:

    您可以在 Gemfile 中定位特定平台:

    platforms :ruby do # linux
      gem 'unicorn'
    end
    
    platforms :mswin do
      # gems specific to windows
    end
    

    请参阅manpages for gemfile 了解更多信息。

    【讨论】:

      【解决方案2】:

      替代解决方案(原始海报非常接近)是

      group :production do
        gem 'unicorn'
      end
      

      然后使用

      bundle install --without production
      

      在您的 Windows 机器上。

      Heroku 旁注(未测试)

      与接受的答案不同,这不应导致 Heroku 忽略您的 Gemfile.lock

      这是因为 Heroku 在确定是否由 Windows 生成时会检查您的 Gemfile 中的 mswinmingw

      【讨论】:

      • Windows 7: gem 'unicorn', group: :production 在安装 kgio 时出现错误,而 gem 'unicorn', platforms: :ruby 不会。
      猜你喜欢
      • 2014-02-27
      • 2019-10-14
      • 1970-01-01
      • 2021-09-20
      • 1970-01-01
      • 2012-04-02
      • 1970-01-01
      • 2023-03-31
      • 1970-01-01
      相关资源
      最近更新 更多