🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Heroku

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

Ruby on Rails

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

Q&A

解決済

3回答

292閲覧

Rails チュートリアル 第1章のデプロイ

masamichan

総合スコア29

Heroku

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

Ruby on Rails

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

0グッド

1クリップ

投稿2019/11/12 02:04

編集2019/11/12 02:51

railsチュートリアルの第1章にて、herokuのデプロイに失敗しました。
heroku logsを見てみると以下のコードが怪しいです。

2019-11-12T01:54:04.722285+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/"

また、heroku run rails consoleで見てみると、以下の文章がありました。

/app/vendor/bundle/ruby/2.5.0/gems/activerecord-5.1.6/lib/active_record/connection_adapters/connection_specification.rb:188:in rescue in spec': Specified 'sqlite3' for database adapter, but the gem is not loaded. Add gem 'sqlite3'` to your Gemfile (and ensure its version is at the minimum required by ActiveRecord). (Gem::LoadError)

たぶん、これがデプロイに失敗した理由かと思われますが、このエラーに対しどう対処していいかわかりません。
どなたか助けていただけると嬉しいです。

よろしくお願い致します。

ちなみに、Gemgileはこのようになっています。

source 'https://rubygems.org'

gem 'rails', '5.1.6'
gem 'puma', '3.9.1'
gem 'sass-rails', '5.0.6'
gem 'uglifier', '3.2.0'
gem 'coffee-rails', '4.2.2'
gem 'jquery-rails', '4.3.1'
gem 'turbolinks', '5.0.1'
gem 'jbuilder', '2.7.0'

group :development, :test do
gem 'sqlite3'
gem 'byebug', '9.0.6', platform: :mri
end

group :development do
gem 'web-console', '3.5.1'
gem 'listen', '3.1.5'
gem 'spring', '2.0.2'
gem 'spring-watcher-listen', '2.0.1'
end

group :production do
gem 'pg', '0.20.0'
end

gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

変更後のコードが上記のようになっています。
このコードで、sqliteがdevelopment, :test doの中にあるので大丈夫かと思ったのですが、herokuに上手くデプロイできません。

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

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

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

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

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

guest

回答3

0

自己解決

この記事が参考になりました。
https://teratail.com/questions/146168?link=qa_related_pc
同じエラーに苦しまない人が出ませんように。
そして、この記事を投稿してくれた人に感謝しています。

投稿2019/11/12 03:54

masamichan

総合スコア29

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

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

0

herokuではsqliteはサポートしていません。

https://devcenter.heroku.com/articles/sqlite3

MySQLかPostgreSQLを使うように変更する必要があります。

https://devcenter.heroku.com/articles/getting-started-with-rails5#add-the-pg-gem

投稿2019/11/12 02:28

kazto

総合スコア7196

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

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

masamichan

2019/11/12 02:53

ソースコードをどのようにすれば良いのでしょうか?
masamichan

2019/11/12 02:59

PostgreSQなら、 group :production do gem 'pg', '0.20.0' end にあると思うのですが。
guest

0

HerokuではSQLiteがサポートされていないため、リスト 1.5の変更を行って、sqlite3 gemが本番環境に導入されないようにしておきます。

と記載があるのですが、こちらは行いましたか。

投稿2019/11/12 02:27

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

masamichan

2019/11/12 02:36

どのようにソースコードを変更すれば良いのでしょうか?
退会済みユーザー

退会済みユーザー

2019/11/12 02:39

Railsチュートリアルに書いてあるように変更すればよいです。 現時点の問題をただ解決したいだけならば、bundle install を実行して Gemfile.lock を更新し、それをコミットした上でデプロイすればよいと思います。
masamichan

2019/11/12 02:42

変更したコードが上記のコードなのですが、bundle installしても変わらないです。
退会済みユーザー

退会済みユーザー

2019/11/12 02:43

何が変わらないのですか?
masamichan

2019/11/12 02:52

herokuのエラーがまだ出ているのです。 2019-11-12T01:54:04.722285+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/ /app/vendor/bundle/ruby/2.5.0/gems/activerecord-5.1.6/lib/active_record/connection_adapters/connection_specification.rb:188:in rescue in spec': Specified 'sqlite3' for database adapter, but the gem is not loaded. Add gem 'sqlite3'` to your Gemfile (and ensure its version is at the minimum required by ActiveRecord). (Gem::LoadError)
退会済みユーザー

退会済みユーザー

2019/11/12 02:58

チュートリアルの手順通りにやっているならば、bundle install をしたところで diff がでてそれが履歴に残っていると思います。 残っていますか。
masamichan

2019/11/12 03:06

すみません。diffってどうやって見れますか? 初心者ながら、お手を煩わせて申し訳ないです。
退会済みユーザー

退会済みユーザー

2019/11/12 03:09

git diff HEAD^ です
masamichan

2019/11/12 03:13

すみません、感謝しています。このようになりました。 diff --git a/Gemfile b/Gemfile index be8fd6c..9c4a308 100644 --- a/Gemfile +++ b/Gemfile @@ -10,7 +10,7 @@ gem 'turbolinks', '5.0.1' gem 'jbuilder', '2.7.0' group :development, :test do - gem 'sqlite3', '1.3.13' + gem 'sqlite3' gem 'byebug', '9.0.6', platform: :mri end diff --git a/Gemfile.lock b/Gemfile.lock index 65ee88c..3584bde 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -173,7 +173,7 @@ DEPENDENCIES sass-rails (= 5.0.6) spring (= 2.0.2) spring-watcher-listen (= 2.0.1) - sqlite3 (= 1.3.13) + sqlite3 turbolinks (= 5.0.1) tzinfo-data uglifier (= 3.2.0)
退会済みユーザー

退会済みユーザー

2019/11/12 03:15

> 現時点の問題をただ解決したいだけならば、bundle install を実行して Gemfile.lock を更新し、それをコミットした上でデプロイすればよいと思います。 こちら、行いましたか?
masamichan

2019/11/12 03:17

本当にすみませんが、どうやれば良いでしょうか? すみません。
退会済みユーザー

退会済みユーザー

2019/11/12 03:19

Railsチュートリアルの手順通りにやればよいです。
masamichan

2019/11/12 03:21

$bundle install $git add -A $git commit -m "ch01" $git push heroku master でよろしいでしょうか?
退会済みユーザー

退会済みユーザー

2019/11/12 03:24

それでよいです。
退会済みユーザー

退会済みユーザー

2019/11/12 03:24

画面は変わらなかったと言われても、以前の画面を見ていないのでわかりません。
masamichan

2019/11/12 03:24

初心者すぎて申し訳ないです。
masamichan

2019/11/12 03:25

ずっとgyazoのリンクに載せた画面のままですね。
退会済みユーザー

退会済みユーザー

2019/11/12 03:26

チュートリアルの手順通りにやっているならば、bundle install をしたところで diff がでてそれが履歴に残っていると思います。 残っていますか。
masamichan

2019/11/12 03:31

diffはこのようになりました。 diff --git a/Gemfile b/Gemfile index 6bf48c3..9c4a308 100644 --- a/Gemfile +++ b/Gemfile @@ -10,7 +10,7 @@ gem 'turbolinks', '5.0.1' gem 'jbuilder', '2.7.0' group :development, :test do - gem 'sqlite3', '~> 1.3.6' + gem 'sqlite3' gem 'byebug', '9.0.6', platform: :mri end diff --git a/Gemfile.lock b/Gemfile.lock index 778d202..3584bde 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -173,7 +173,7 @@ DEPENDENCIES sass-rails (= 5.0.6) spring (= 2.0.2) spring-watcher-listen (= 2.0.1) - sqlite3 (~> 1.3.6) + sqlite3 turbolinks (= 5.0.1) tzinfo-data uglifier (= 3.2.0) diff --git a/heroku/CHANGELOG.md b/heroku/CHANGELOG.md new file mode 100644 index 0000000..92fc062 --- /dev/null +++ b/heroku/CHANGELOG.md @@ -0,0 +1,956 @@
退会済みユーザー

退会済みユーザー

2019/11/12 03:35

heroku/CHANGELOG.md が加わっていたり、sqlite3 の指定バージョンが以前と変わっていたりして経緯が見えません。 commitは正常に行われていますか? git logでどのような経緯をたどっているのか確認したほうがいいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問