Is it possible to run my Rails app on Heroku with Ruby 1.9.3? If so, how?

后端 未结 6 1357
闹比i
闹比i 2021-02-02 00:21

I tried this tip: https://github.com/thoughtbot/laptop/pull/14#issuecomment-3192270 .

On deploy I see

-----> Using RUBY_VERSION: ruby-1.9.3-p0
         


        
相关标签:
6条回答
  • 2021-02-02 00:41

    I was able to get a Rails 3.2 app running on Ruby 1.9.3-p0 on Heroku cedar today

    I followed the steps on http://railsapps.github.com/rails-heroku-tutorial.html

    ran into a problem locally with 1.9.3 and openssl

    but was able to get an app deployed and working http://mccaffrey-rails32-193.herokuapp.com

    no Procfile

    thin and pg in Gemfile

    I added some debug output so you can see the rails and ruby version info

    Its crazy that a basic rails app slug size is 28.9MB!

    0 讨论(0)
  • 2021-02-02 00:41

    I had the same problem: Specifying 1.9.3 in my Gemfile, but it was using 1.9.2. This fixed it:

    heroku config:add PATH=bin:vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin
    
    0 讨论(0)
  • 2021-02-02 00:45

    Here's an update for everyone referencing this question... Heroku now allows you to specify your ruby version in your Gemfile, thanks to their addition to the latest version of bundler.

    First run:

    gem install bundler --pre
    

    then add ruby '1.9.3' to your Gemfile as such.

    source 'http://rubygems.org'
    
    ruby '1.9.3'
    gem  'rails', '3.2.3'
    

    The full release from Heroku with details is at http://blog.heroku.com/archives/2012/5/9/multiple_ruby_version_support_on_heroku/

    0 讨论(0)
  • 2021-02-02 00:49

    Since May 10 it is possible to use Ruby 1.9.3 in an easier way. Just take a look at Heroku's blog: http://blog.heroku.com/archives/2012/5/9/multiple_ruby_version_support_on_heroku/

    0 讨论(0)
  • 2021-02-02 00:56

    Right, so Ruby 1.9.3 is definitely possibly. As you said hacky/experimental solutions were accepted - this is definitely one of them.

    It's actually really simple;

    1. Enable Heroku Labs's user_env_compile feature for your application.

    2. Set a heroku config variable to RUBY_VERSION to ruby-1.9.3-p0 (heroku config:add RUBY_VERSION=ruby-1.9.3-p0)

    3. ENSURE that the heroku PATH config variable has bin at the front (heroku config:add PATH=bin:vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin)

    When you next deploy you should see your application using 1.9.3 - the deployment output will show this too;

    -> Heroku receiving push
    -----> Ruby/Rails app detected
    -----> Using RUBY_VERSION: ruby-1.9.3-p0
    -----> Installing dependencies using Bundler version 1.1.rc.7
    Running: bundle install --without development:test --path vendor/bundle --binstubs bin/ --deployment
    
    0 讨论(0)
  • 2021-02-02 00:56

    According to the Heroku Cedar stack definition here Cedar currently only supports MRI 1.9.2. Have you tried contacting Heroku support? They're generally pretty responsive.

    Edit: it's possible to 'fool' the platform sometimes into running some binaries such as running Haskell on Heroku so if you're feeling really dedicated you might be able to package something up. I imagine this isn't too easy with MRI though.

    0 讨论(0)
提交回复
热议问题