質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

2850閲覧

herokuにデプロイできません

sakas1231

総合スコア42

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2017/07/27 08:45

Ruby on railsをrails tutorialで勉強中です。
昨日まではデプロイできたのですが、今日になってデプロイしようとすると

We're sorry, but something went wrong. If you are the application owner check the logs for more information.

と出てきてしまいます。ただ、rails testはちゃんと通ります。

昨日から今日にかけてやったこととしては、仮想マシンを立ててそこにrailsを入れました。
そこでも同様に自分のherokuアカウントとつなぎ、無事デプロイできました。

経緯としては、最初にデプロイした際に

remote: You have not declared a Ruby version in your Gemfile. remote: To set your Ruby version add this line to your Gemfile: remote: ruby '2.3.4'

と言われたのでGemfileにruby '2.3.4'を書き加えたところ

Your Ruby version is 2.3.1, but your Gemfile specified 2.3.4

と言われたのでruby '2.3.1'をGemfileに書き加えてデプロイしたらエラーを吐かなかったのですが上記のエラーが出てしまったという感じです。

今まではこのアプリでデプロイできていたのですが、仮想マシンを作った途端にできなくなってしまいました。

回答とも是非よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gouf

2017/07/29 11:58

Gemfile に定義したRuby のバージョンを2.3.1 に変更した場合、双方の環境で動きますか?
sakas1231

2017/07/31 07:15

2.3.1にするとbundle installは通るのですがherokuにデプロイするとエラー出てしまいます。
guest

回答1

0

ベストアンサー

おそらくの勘なので絶対あってるとは限らないのですが、そういうエラーが出てきた場合、rubyのバージョンの方で問題があるパターンもあるのですが、bundlerの方でエラーが起こっている場合があります。
とりあえず、herokuで使われているrubyのバージョンを確認するためにheroku run 'ruby -e "puts RUBY_VERSION"'を試してみてください。
それで、特に間違っていなかったら、gem install bundlerしてbundle installし直してみてください。

Rubyをインストールした時やアップデートした時(ファイルを他の環境に移した時も含め)は、必ずgem install bundlerをしたほうがいいです。基本的にはrailsはgemの管理をbundlerに依存しているので、rubyのアップデートやrailsのアップデートをした時にはbundlerのアップデートをしておかないと予期しないところで動かなる場合があります。

参考記事:
同じような事例
同じような事例2

投稿2017/07/29 19:01

nami634

総合スコア188

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sakas1231

2017/07/31 07:13

いろいろ試行錯誤したらバージョン確かに違いました $ ruby -v ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux] $ heroku run 'ruby -e "puts RUBY_VERSION"' ▸ heroku-cli: This CLI is deprecated. Please reinstall from https://cli.heroku.com 2.4.1 これは、PCのバージョンが2.3.1で、herokuで走らせようとしているバージョンが2.4.1 という認識でいいのでしょうか? これの対処法は自分の持ってるrubyを2.4.1にバージョンアップさせるしかないのでしょうか?
nami634

2017/07/31 12:00

その場合は、gemfileで2.3.1を指定した上で、ローカルの方のbundlerを再インストールしてみてください
sakas1231

2017/08/05 00:47

できました!ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問