前提・実現したいこと
Ruby on Railsチュートリアルを独学中で、第二章の「Toyアプリケーション」を進めています。
<経過>
- $ rails 5.1.6 new toy_app でフォルダを新規作成
- Gemfileを編集(sqlite3 gemが本番環境に導入されないように、またpg gemをローカルの環境にはインストールしないようにするため)
- $ bundle install --without production でローカルgemをインストール
- リモートリポジトリ(Bitbucket)へのプッシュは成功
- Herokuへのプッシュで $ git commit -am "Add hello" 及び $ heroku create までは問題無し
- $ git push heroku masterでエラー発生、次に進めず
解決方法をご教示頂きたいです。
<その他情報>
- OS:Windows
- 開発環境:Cloud9
- その他ツール:Git, Bitbucket, Heroku
エンジニア未経験で独学中、また初投稿ということもあり、記載内容の不足や誤りなどあれば申し訳ございません。ご遠慮なくご指摘頂ければ幸いです。
該当のソースコード
ec2-user:~/environment/toy_app (master) $ git push heroku master Counting objects: 91, done. Compressing objects: 100% (77/77), done. Writing objects: 100% (91/91), 21.13 KiB | 1.32 MiB/s, done. Total 91 (delta 7), reused 0 (delta 0) ~中略~ remote: An error occurred while installing sqlite3 (1.4.2), and Bundler cannot continue. remote: Make sure that `gem install sqlite3 -v '1.4.2' --source 'https://rubygems.org/'` remote: succeeds before bundling. remote: remote: In Gemfile: remote: sqlite3 remote: remote: ! remote: ! Failed to install gems via Bundler. remote: ! Detected sqlite3 gem which is not supported on Heroku: remote: ! https://devcenter.heroku.com/articles/sqlite3 remote: ! remote: ! Push rejected, failed to compile Ruby app. remote: remote: ! Push failed remote: Verifying deploy... remote: remote: ! Push rejected to boiling-sands-33187. remote: To https://git.heroku.com/boiling-sands-33187.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'https://git.heroku.com/boiling-sands-33187.git'
試したこと
上記のソースコードで、sqlite3 gemがHerokuでサポートされていないためrejectされた、というのは読み取れました。
しかしながら、Railsチュートリアルの指示に従い、gemファイルを下記のように変更することで、sqlite3はローカル環境のみ、PostgreSQLが本番環境で動作するようにしていました。Herokuへのプッシュ時でも問題ないはずでは?と考えております。
group :development, :test do gem 'sqlite3', '1.3.13' gem 'byebug', '9.0.6', platform: :mri end group :production do gem 'pg', '0.20.0' end
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。