巷で噂のRails Tutorialがどんなものか気になったので一通りやってみました。
1~14章の全章、テスト込、Herokuデプロイ、Bitbucketなどなど、
飛ばさずにやってみた結果、様々なエラーが出ました。
今回のこの記事ではRailsTutorialでエラーが出たり詰まったりした箇所をまとめておきます。
※テキスト通りにやって何も問題なかった章は飛ばしています。
Rails tutorialの1章でエラーになった箇所と解決策
1章からです。環境構築。
そもそもAWS自体に初めて登録しました。このAWSを利用できるようにするまでが長かったです。
それでようやくAWSが利用できるようになった!と思いきや、サーバを立ち上げた時に、AWSの画面からサイトをプレビューできませんでした。
これは別ウィンドウで表示させるしかない(赤枠の部分を押すしかない)みたいで、しょうもないことですが戸惑いました。
スポンサーリンク
Rails tutorialの3章でエラーになった箇所と解決策
テストをしていたらNomethodErrorというエラーがでました。
tmuxがインストールされていなかったみたいです。
3章の後半で入れる箇所があるのですが、もっと早めに導入する必要がありました。
参考にしたサイト:https://ty-engineer.com/ruby-on-rails/rails-tutorial-3-error-tmux/
スポンサーリンク
Rails tutorialの6章でエラーになった箇所と解決策
最後のコミット後、heroku runができませんでした。heroku -vを確認すると、Herokuのクライアントが入ってないようでした。
参考にしたサイト:https://www.lib-arc.com/entry/2018/04/15/234355
npm install -g heroku-cli
でHerokunoクライアントを導入すると今度はupdateしろとのこと。
ec2-user:~/environment/sample_app (master) $ heroku -v › Warning: heroku-cli update available from 7.0.9 to 7.26.2. heroku-cli/7.0.9 linux-x64 node-v10.16.0
updateすると、
heroku-cli: Updating CLI... not updatable
と言われてしまいました。なので、
https://qiita.com/Panzo_webengineer/items/4af03a15d6cfeb6cd643
↑こちらのサイトを参考にしてUpdateできました。
Rails tutorialの7章でエラーになった箇所と解決策
最後の最後でrails sすると立ち上がらなくなって、以下のエラーが出ました。
Traceback (most recent call last):
4: from /home/ec2-user/.rvm/gems/ruby-2.6.3/bin/ruby_executable_hooks:24:in `<main>'
3: from /home/ec2-user/.rvm/gems/ruby-2.6.3/bin/ruby_executable_hooks:24:in `eval'
2: from /home/ec2-user/.rvm/gems/ruby-2.6.3/bin/rails:23:in `<main>'
1: from /home/ec2-user/.rvm/rubies/ruby-2.6.3/lib/ruby/site_ruby/2.6.0/rubygems.rb:303:in `activate_bin_path'
/home/ec2-user/.rvm/rubies/ruby-2.6.3/lib/ruby/site_ruby/2.6.0/rubygems.rb:284:in `find_spec_for_exe': can't find gem railties (>= 0.a) with executable rails (Gem::GemNotFoundException)
bundlerをインストールして解決しました。
参考にしたサイト:https://qiita.com/yukiweaver/items/9f07b32f31c7e863fe1c
gem install bundler bundle install
ただ本番環境でのエラーが出ました。
[4] * Listening on tcp://0.0.0.0:33175 2019-07-26T12:03:41.606292+00:00 app[web.1]: bundler: failed to load command: puma (/app/vendor/bundle/ruby/2.5.0/bin/puma) 2019-07-26T12:03:41.606355+00:00 app[web.1]: Errno::EADDRINUSE: Address already in use - bind(2) for "0.0.0.0" port 33175 2019-07-26T12:03:41.606359+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/gems/puma-3.9.1/lib/puma/binder.rb:269:in `initialize' 2019-07-26T12:03:41.606361+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/gems/puma-3.9.1/lib/puma/binder.rb:269:in `new'
結果的にpuma.rbの記述方法を間違っていました。(チュートリアルに設定の内容を理解しなくていいと書いてあるからといってファイルの一番下に全部コピペするとエラーになります。ファイルのなかのコメントアウト部分を外していく作業が 必要です。)
参考にしたサイト:https://qiita.com/yokoyan/items/caf005acecb0e6aefbec
Rails tutorialの10章でエラーになった箇所と解決策
fakerをbundle Installしようとしたら以下のようなエラーになりました。
Bundler could not find compatible versions for gem "i18n":
In snapshot (Gemfile.lock):
i18n (= 1.6.0)
In Gemfile:
rails (= 5.1.6) was resolved to 5.1.6, which depends on
activesupport (= 5.1.6) was resolved to 5.1.6, which depends on
i18n (>= 0.7, < 2)
faker (= 1.7.3) was resolved to 1.7.3, which depends on
i18n (~> 0.5)
Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.
これはそのまま書いてある通り、bundle updateで回避しました。
Rails tutorialの11章でエラーになった箇所と解決策
rails db:migrateしようとしたらなぜかエラー発生。
ec2-user:~/environment/sample_app (user-microposts) $ rails db:migrate FATAL: Listen error: unable to monitor directories for changes. Visit https://github.com/guard/listen/wiki/Increasing-the-amount-of-inotify-watchers for info on how to fix this.
inotifyのインスタンス上限を変更することで解決しました。
参考サイト:https://qiita.com/yn-misaki/items/c850a07f7858437e4d26
Rails tutorialの13章でエラーになった箇所と解決策
リスト 13.59でテストがRedになりました。
springを再起動する方法などが検索結果で出てきましたが、チュートリアルにあった通り、AWSを再接続したり、ターミナルを新しくしたりしているうちに解決しました。
また、本番環境への画像のUPをする際のAWSのS3設定がチュートリアルでは省かれていたので、
こちらのサイトが参考になりました。→https://qiita.com/ryuchan00/items/8e414562b7122e7ec4fb
Rails tutorialの14章でエラーになった箇所と解決策
細かいことなのですが、followボタンがチュートリアルの画像のように灰色にならないので、クラス追加しときました。
これは私だけ???
最後に
というわけでRails Tutorialの全14章で発生したエラーと解決策まとめでした。
どなたかの参考になれば幸いです。




