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

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

詳細はこちら
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Ruby on Rails

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

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

1回答

373閲覧

オリジナルアプリでデプロイができない。

murohi-08

総合スコア12

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Ruby on Rails

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

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2021/01/18 06:29

編集2021/01/21 11:02

オリジナルアプリをローカル環境で完成させたのですが、heroku上にデプロイができなくて困っています。
調べてみると、アプリを作成する際にherokuようにmysqlの設定をする必要があると言うのがありましたが、もう一度作り直すとなれば効率が非常に悪いので、他に方法はないかと詮索中です。
再度ゼロからやるしかないのでしょうか?どなたかご教授くだされば幸いです。よろしくお願いします。

% git push heroku master (省略) remote: ! remote: ! Could not detect rake tasks remote: ! ensure you can run `$ bundle exec rake -P` against your app remote: ! and using the production group of your Gemfile. remote: ! Activating bundler (2.2.1) failed: remote: ! Could not find 'bundler' (2.2.1) required by your /tmp/build_cd7c7df8/Gemfile.lock. remote: ! To update to the latest version installed on your system, run `bundle update --bundler`. remote: ! To install the missing version, run `gem install bundler:2.2.1` remote: ! Checked in 'GEM_PATH=/tmp/build_cd7c7df8/vendor/bundle/ruby/2.6.0', execute `gem env` for more information remote: ! remote: ! To install the version of bundler this project requires, run `gem install bundler -v '2.2.1'` remote: ! remote: /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/helpers/rake_runner.rb:106:in `load_rake_tasks!': Could not detect rake tasks (LanguagePack::Helpers::RakeRunner::CannotLoadRakefileError) remote: ensure you can run `$ bundle exec rake -P` against your app remote: and using the production group of your Gemfile. remote: Activating bundler (2.2.1) failed: remote: Could not find 'bundler' (2.2.1) required by your /tmp/build_cd7c7df8/Gemfile.lock. remote: To update to the latest version installed on your system, run `bundle update --bundler`. remote: To install the missing version, run `gem install bundler:2.2.1` remote: Checked in 'GEM_PATH=/tmp/build_cd7c7df8/vendor/bundle/ruby/2.6.0', execute `gem env` for more information remote: remote: To install the version of bundler this project requires, run `gem install bundler -v '2.2.1'` remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/ruby.rb:885:in `rake' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/ruby.rb:986:in `block in run_assets_precompile_rake_task' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:18:in `block (2 levels) in instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:40:in `yield_with_block_depth' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:17:in `block in instrument' remote: from /tmp/tmp.G1tNkAAE36/lib/ruby/2.4.0/benchmark.rb:308:in `realtime' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:16:in `instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/base.rb:48:in `instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/base.rb:44:in `instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/ruby.rb:984:in `run_assets_precompile_rake_task' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/ruby.rb:134:in `block (2 levels) in compile' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/ruby.rb:906:in `allow_git' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/ruby.rb:128:in `block in compile' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:18:in `block (2 levels) in instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:40:in `yield_with_block_depth' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:17:in `block in instrument' remote: from /tmp/tmp.G1tNkAAE36/lib/ruby/2.4.0/benchmark.rb:308:in `realtime' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:16:in `instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/base.rb:48:in `instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/base.rb:44:in `instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/ruby.rb:116:in `compile' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/bin/support/ruby_compile:20:in `block (2 levels) in <main>' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/base.rb:134:in `log' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/bin/support/ruby_compile:19:in `block in <main>' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:35:in `block in trace' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:18:in `block (2 levels) in instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:40:in `yield_with_block_depth' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:17:in `block in instrument' remote: from /tmp/tmp.G1tNkAAE36/lib/ruby/2.4.0/benchmark.rb:308:in `realtime' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:16:in `instrument' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/lib/language_pack/instrument.rb:35:in `trace' remote: from /tmp/codon/tmp/buildpacks/39f112f50b07a72959c8a346ce561f7cb404a86c/bin/support/ruby_compile:15:in `<main>' remote: ! Push rejected, failed to compile Ruby app. remote: remote: ! Push failed remote: Verifying deploy... remote: remote: ! Push rejected to polar-waters-88164. remote: To https://git.heroku.com/polar-waters-88164.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'https://git.heroku.com/polar-waters-88164.git'

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

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

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

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

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

gouf

2021/01/19 04:32

ローカル開発環境で「git branch」を実行した場合、表示されるのは「master」ですか? 「main」ですか?
murohi-08

2021/01/19 05:06 編集

ご返信ありがとうございます。心から感謝いたします。表示は「master」となっております。GitHub上の問題ですかね?どうぞよろしくご教授お願いいたします。
gouf

2021/01/19 05:14

master から main へ移行する流れがあったので、それ絡みなのかなって思ったのです : https://github.com/github/renaming --- 質問欄のログにある「The Ruby version you are trying to install does not exist on this stack.」あたりに注目してみてください Ruby 2.6 系に対応している stack は「cedar-14」「heroku-16」「heroku-18」の3つですね しかし、今現在の環境、stack は 「heroku-20」を使おうとしています Ruby のバージョンを下げるか、あるいは Heroku 上でアプリの作り直しをした方が早いかもしれませんね
murohi-08

2021/01/19 07:15 編集

ありがとうございます。' % heroku create アプリ名 ' でheroku上でのアプリを作り直してみましたが、同じようなエラーでrejectされてしまいます。 GithubのURLへ飛び散見いたしましたところ、既定のブランチを「master」から「main」に変更したほうがいいのでしょうか? ターミナルの内容を一応編集致しました。 プログラミンング初心者で恐れ入りますが、お教えいただければ幸いです。
gouf

2021/01/19 09:26

今度は違うエラーになっていますよ。ログはよく確認すると、今後も幸せになれるかもしれません いま質問欄に記載されているログだと、コミットログに差分が発生してない状況ではありませんか? : https://devcenter.heroku.com/articles/duplicate-build-version --- たとえば空コミットをして、変化が見られるか、観察してみましょう : https://qiita.com/miriwo/items/dbf82ca73723026d96f2
murohi-08

2021/01/20 06:47 編集

返信が遅れまして申し訳ありません。 空のコミット“ git commit --allow-empty -m "空のコミット" ”で試してみましたが、やはりエラーになってしまいます。 Githubの方でもpushしたのですが、なかなかうまくいきません。 また編集しておきましたので、お教えくださいますでしょうか?よろしくお願いします。
gouf

2021/01/21 06:40 編集

状況がよく分かりませんでした ログは可能な限り 多くを記載してください GitHub にリポジトリは公開されていますか? こちらで 改めて Heroku にデプロイして、どうなるのかを見てみたいです
gouf

2021/01/21 06:55

Rails プロジェクトに限らず、Ruby のプロジェクトは Bundler を介して、必要なライブラリのインストールを行っています (ログを観察すると、Heroku 側でも bundler を使おうとしています) --- 「gem install bundler:2.1.4」 + 「bundle install」を試してみた結果... 1. git に差分は生じますか 2. (差分が発生していれば) コミット & push した結果、ログ出力に変化は見られますか
murohi-08

2021/01/21 06:58

ありがとうございます。こちらが今実装中のオリジナルサイトのリポジトリとなります。 https://github.com/murohi-siyabako/original ログも可能な限り載せておきました。 一応ログの中に`gem install bundler -v '2.1.4'`の部分が原因でエラーが発生したのを解決しているケースがあり、ターミナルでgem install bundler -v '2.1.4 を実行して空コミットをpushしてみましたが変化はなかったです。 お時間いただいて大変恐縮です。よろしくお願いいたします。
guest

回答1

0

Gemfile で指定している Ruby のバージョンを「2.6.5」から「2.6.6」に変更してみてください

この回答と同時に、プルリクエスト を作成しました
そちらも確認してみてください

なにか参考になれば幸いです

投稿2021/01/21 07:39

gouf

総合スコア2321

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

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

murohi-08

2021/01/21 10:02

プルリクエストまでしていただいてありがとうございます。 Gemfileのruby versionを「2.6.5」から「2.6.6」へ変更いたしましたが、やはり変化はありませんでした。 .ruby-versionファイルも「2.6.6」に変更いたしました。それでもうまくいきません。 もう一度最初から実装した方がよろしいでしょうか?
gouf

2021/01/21 10:24

Pull Request なのでマージ操作、ボタンを押すと変更が master に適用されます 手作業で新たにコミットを作成する必要はありません --- 「heroku create」で Heroku 側のデプロイ体制をリセットすると変化は見られますか? (※「git remote -v」で新しいアプリの URL が割り当てられていることを確認)
murohi-08

2021/01/21 11:07

ありがとうございます。heroku create で作りなしてみましたが、上記をご覧のように変化ありません。 空のコミットもしてみましたが、同じような結果が出てしまいした。 他に変更点はありますでしょうか?
gouf

2021/01/21 12:25 編集

Pull Request をマージ後、ローカル開発環境に pull しましたか? (「git pull origin master」) (※master もしくは main) --- 質問欄の編集履歴を確認してみると、変わらずアプリ名「polar-waters-88164」に push しようとしています 「heroku create」...「作り直しを試してみる」部分... heroku 側のアプリは、git push しようとしている先は変わっていますか? (もしかしたら「heroku apps:destroy」を実行する必要があるかも知れません) --- わたしの方では... 1. Ruby のバージョンを 2.6.6 に変更 2. bundle install 3. Heroku にデプロイ という手順で push に成功しました
murohi-08

2021/01/21 12:23

Rubyバージョンの変更の仕方が悪いのかもしれません。一応先ほどGemfileと.ruby-versionのファイルに「~> 2.6.6」と「2.6.6」に変更しております。もしかすると、.ruby-versionのファイルも「~> 2.6.6」にした方がよろしいですかね?ターミナルを使ってインストールとかするのでしょうか?
gouf

2021/01/21 12:32

.ruby-versions は、rbenv に対する設定です (= Heroku は無関係) これはローカル開発環境だけに影響する設定です 「2.6.6」に設定しておきましょう (「rbenv local 2.6.6」) Gemfile は git push 経由で Heroku に転送されます なので「~> 2.6.6」の設定は有効でしょう --- 試してみて欲しいのは、「アプリの再作成」です 1. 「heroku apps:destroy --app polar-waters-88164」既存アプリを削除 2. 「heroku create」アプリを再作成 3. 「bundle update」 4. 「git add .」 5. 「git commit -m "※適当なメッセージを入力"」 6. 「git push heroku master」(master もしくは main)
murohi-08

2021/01/21 15:12

「heroku apps:destroy --app polar-waters-88164」で削除はできたみたいですが、「bundle update」が通らずバージョンがインストールができません。 「heroku create」でアプリ作成を実行し、正しく設定できたか確認する「git config --list | grep heroku」をしたのですが何も出力されなくなりました。 なぜか一通りの流れができなくなってしまいました。返信遅れて申し訳ありません。恐縮ですが、また明日お返事お待ちしております。
gouf

2021/01/22 03:34 編集

各バージョンで管理されている gem は、Ruby のバージョンごとに独立しています そのため、rbenv でバージョン切り替えをすると... a. 「2.5.5」では rails gem をインストール済み → rails コマンドが使える b. 「2.5.6」では rails gem がインストールされてない → rails コマンドが使えない という状況が発生します 答えは単純で、「2.6.6 でも rails gem をインストールする」です rails gem を例に説明しましたが... 「gem install bundler」で bundler をインストールするのが最も簡単でしょう (「bundle install」で Gemfile に定義された gem を一括インストールしてくれる) --- 「heroku create」の結果を確認する方法は「git remote -v | grep heroku」が正解ですね... (heroku 側にソースコード受け入れ先が作成されて、git remote に push 先として登録される)
murohi-08

2021/01/22 03:57

「bundle install」を実行したら、「An error occurred while installing mysql2 (0.5.3), and Bundler cannot continue. Make sure that `gem install mysql2 -v '0.5.3' --source 'https://rubygems.org/'` succeeds before bundling.」が出てきてしまいました。GemfileにMysqlの設定も変えなきゃいけないのでしょうか?
gouf

2021/01/22 04:20

段々と Heroku 関連の質問・問題から離れていっているように感じます いちど新規の質問として、「mysql2 gem のインストールが失敗する」旨の質問を書いてください ひとつひとつ、解決していきましょう
murohi-08

2021/01/22 04:31

申し訳ありません。そういたします。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問