pentpenpen’s blog

自己満備忘録

railsアプリをherokuにデプロイする際にハマったポイント

前提

  • railsアプリはほとんどscaffoldingで作成したまま(view、seeds.rbを少し編集した程度)
  • railsバージョン:6.1.4.1
  • herokuは無料アカウント
  • 主にherokuのガイドを参考に実施

ハマりポイント

  • herokuにpushした際にエラーが発生
remote:        Your bundle only supports platforms ["arm64-darwin-20"] but your local platform
remote:        is x86_64-linux. Add the current platform to the lockfile with `bundle lock
remote:        --add-platform x86_64-linux` and try again.
remote:        Bundler Output: Your bundle only supports platforms ["arm64-darwin-20"] but your local platform
remote:        is x86_64-linux. Add the current platform to the lockfile with `bundle lock
remote:        --add-platform x86_64-linux` and try again.

⇨実行ログ中に表示されていた上記のメッセージに従い、bundle lock --add-platform x86_64-linux を実行後、再度pushすると成功。

  • デプロイ後アプリにアクセスできない&seeds.rbのデータが反映されていない ⇨以下コマンドを実行して解消。
heroku run rails db:migrate
heroku run rails db:seed

macbookでrailsの学習環境を構築

ふと思い立ったのでrailsを触れる環境を用意してみる(続き)

先日MacBook Airを購入したが、ネットワーフィンしかせず宝の持ち腐れ感に耐えきれなくなってきた。 次はrailsをインストール。

railsをインストール

  • バージョンを確認、対象フォルダのrubyバージョンを指定
~/Workspace/git-repos % rbenv versions
* system
  3.0.2
~/Workspace/git-repos % rbenv local 3.0.2
~/Workspace/git-repos % rbenv version
3.0.2 (set by /Users/yoshino/Workspace/git-repos/.ruby-version)
  • railsをインストール
~/Workspace/git-repos % gem install rails
Fetching rack-2.2.3.gem
Fetching concurrent-ruby-1.1.9.gem
Fetching sprockets-4.0.2.gem
Fetching zeitwerk-2.5.1.gem
Fetching tzinfo-2.0.4.gem
Fetching i18n-1.8.10.gem
Fetching activesupport-6.1.4.1.gem
Fetching nokogiri-1.12.5-arm64-darwin.gem
Fetching crass-1.0.6.gem
Fetching loofah-2.12.0.gem
Fetching rails-html-sanitizer-1.4.2.gem
Fetching rails-dom-testing-2.0.3.gem
Fetching rack-test-1.1.0.gem
Fetching erubi-1.10.0.gem
Fetching builder-3.2.4.gem
Fetching actionview-6.1.4.1.gem
Fetching actionpack-6.1.4.1.gem
Fetching sprockets-rails-3.2.2.gem
Fetching thor-1.1.0.gem
Fetching method_source-1.0.0.gem
Fetching railties-6.1.4.1.gem
Fetching mini_mime-1.1.2.gem
Fetching marcel-1.0.2.gem
Fetching activemodel-6.1.4.1.gem
Fetching activerecord-6.1.4.1.gem
Fetching globalid-0.5.2.gem
Fetching activejob-6.1.4.1.gem
Fetching activestorage-6.1.4.1.gem
Fetching actiontext-6.1.4.1.gem
Fetching mail-2.7.1.gem
Fetching actionmailer-6.1.4.1.gem
Fetching actionmailbox-6.1.4.1.gem
Fetching rails-6.1.4.1.gem
Fetching websocket-extensions-0.1.5.gem
Fetching websocket-driver-0.7.5.gem
Fetching nio4r-2.5.8.gem
Fetching actioncable-6.1.4.1.gem
Successfully installed rack-2.2.3
Successfully installed concurrent-ruby-1.1.9
Successfully installed sprockets-4.0.2
Successfully installed zeitwerk-2.5.1
Successfully installed tzinfo-2.0.4
Successfully installed i18n-1.8.10
Successfully installed activesupport-6.1.4.1
Successfully installed nokogiri-1.12.5-arm64-darwin
Successfully installed crass-1.0.6
Successfully installed loofah-2.12.0
Successfully installed rails-html-sanitizer-1.4.2
Successfully installed rails-dom-testing-2.0.3
Successfully installed rack-test-1.1.0
Successfully installed erubi-1.10.0
Successfully installed builder-3.2.4
Successfully installed actionview-6.1.4.1
Successfully installed actionpack-6.1.4.1
Successfully installed sprockets-rails-3.2.2
Successfully installed thor-1.1.0
Successfully installed method_source-1.0.0
Successfully installed railties-6.1.4.1
Successfully installed mini_mime-1.1.2
Successfully installed marcel-1.0.2
Successfully installed activemodel-6.1.4.1
Successfully installed activerecord-6.1.4.1
Successfully installed globalid-0.5.2
Successfully installed activejob-6.1.4.1
Successfully installed activestorage-6.1.4.1
Successfully installed actiontext-6.1.4.1
Successfully installed mail-2.7.1
Successfully installed actionmailer-6.1.4.1
Successfully installed actionmailbox-6.1.4.1
Successfully installed websocket-extensions-0.1.5
Building native extensions. This could take a while...
Successfully installed websocket-driver-0.7.5
Building native extensions. This could take a while...
Successfully installed nio4r-2.5.8
Successfully installed actioncable-6.1.4.1
Successfully installed rails-6.1.4.1
Parsing documentation for rack-2.2.3
Installing ri documentation for rack-2.2.3
Parsing documentation for concurrent-ruby-1.1.9
Installing ri documentation for concurrent-ruby-1.1.9
Parsing documentation for sprockets-4.0.2
Installing ri documentation for sprockets-4.0.2
Parsing documentation for zeitwerk-2.5.1
Installing ri documentation for zeitwerk-2.5.1
Parsing documentation for tzinfo-2.0.4
Installing ri documentation for tzinfo-2.0.4
Parsing documentation for i18n-1.8.10
Installing ri documentation for i18n-1.8.10
Parsing documentation for activesupport-6.1.4.1
Installing ri documentation for activesupport-6.1.4.1
Parsing documentation for nokogiri-1.12.5-arm64-darwin
Installing ri documentation for nokogiri-1.12.5-arm64-darwin
Parsing documentation for crass-1.0.6
Installing ri documentation for crass-1.0.6
Parsing documentation for loofah-2.12.0
Installing ri documentation for loofah-2.12.0
Parsing documentation for rails-html-sanitizer-1.4.2
Installing ri documentation for rails-html-sanitizer-1.4.2
Parsing documentation for rails-dom-testing-2.0.3
Installing ri documentation for rails-dom-testing-2.0.3
Parsing documentation for rack-test-1.1.0
Installing ri documentation for rack-test-1.1.0
Parsing documentation for erubi-1.10.0
Installing ri documentation for erubi-1.10.0
Parsing documentation for builder-3.2.4
Installing ri documentation for builder-3.2.4
Parsing documentation for actionview-6.1.4.1
Installing ri documentation for actionview-6.1.4.1
Parsing documentation for actionpack-6.1.4.1
Installing ri documentation for actionpack-6.1.4.1
Parsing documentation for sprockets-rails-3.2.2
Installing ri documentation for sprockets-rails-3.2.2
Parsing documentation for thor-1.1.0
Installing ri documentation for thor-1.1.0
Parsing documentation for method_source-1.0.0
Installing ri documentation for method_source-1.0.0
Parsing documentation for railties-6.1.4.1
Installing ri documentation for railties-6.1.4.1
Parsing documentation for mini_mime-1.1.2
Installing ri documentation for mini_mime-1.1.2
Parsing documentation for marcel-1.0.2
Installing ri documentation for marcel-1.0.2
Parsing documentation for activemodel-6.1.4.1
Installing ri documentation for activemodel-6.1.4.1
Parsing documentation for activerecord-6.1.4.1
Installing ri documentation for activerecord-6.1.4.1
Parsing documentation for globalid-0.5.2
Installing ri documentation for globalid-0.5.2
Parsing documentation for activejob-6.1.4.1
Installing ri documentation for activejob-6.1.4.1
Parsing documentation for activestorage-6.1.4.1
Installing ri documentation for activestorage-6.1.4.1
Parsing documentation for actiontext-6.1.4.1
Installing ri documentation for actiontext-6.1.4.1
Parsing documentation for mail-2.7.1
Installing ri documentation for mail-2.7.1
Parsing documentation for actionmailer-6.1.4.1
Installing ri documentation for actionmailer-6.1.4.1
Parsing documentation for actionmailbox-6.1.4.1
Installing ri documentation for actionmailbox-6.1.4.1
Parsing documentation for websocket-extensions-0.1.5
Installing ri documentation for websocket-extensions-0.1.5
Parsing documentation for websocket-driver-0.7.5
Installing ri documentation for websocket-driver-0.7.5
Parsing documentation for nio4r-2.5.8
Installing ri documentation for nio4r-2.5.8
Parsing documentation for actioncable-6.1.4.1
Installing ri documentation for actioncable-6.1.4.1
Parsing documentation for rails-6.1.4.1
Installing ri documentation for rails-6.1.4.1
Done installing documentation for rack, concurrent-ruby, sprockets, zeitwerk, tzinfo, i18n, activesupport, nokogiri, crass, loofah, rails-html-sanitizer, rails-dom-testing, rack-test, erubi, builder, actionview, actionpack, sprockets-rails, thor, method_source, railties, mini_mime, marcel, activemodel, activerecord, globalid, activejob, activestorage, actiontext, mail, actionmailer, actionmailbox, websocket-extensions, websocket-driver, nio4r, actioncable, rails after 19 seconds
37 gems installed
  • railsのバージョン確認
~/Workspace/git-repos % rails -v
Rails 6.1.4.1

macbookでrubyの学習環境を構築

ふと思い立ったのでrailsを触れる環境を用意してみる

先日MacBook Airを購入したが、ネットワーフィンしかせず宝の持ち腐れ感に耐えきれなくなってきたので railsの勉強開始。 まずはrubyをインストール。

前提

rubyをインストール

  • homebrew install ruby
  • ~ % ruby -v ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.arm64e-darwin20]

rbenv, ruby-buildをインストール

  • brew install rbenv ruby-build
  • バージョンを確認
~ % rbenv -v
rbenv 1.2.0
  • インストール済みのrubyを表示
~ % rbenv versions
* system
  • rbenvの設定を実行
echo 'eval "$(rbenv init -)"' >>  ~/.zshrc
source ~/.zshrc
  • インストール可能なrubyのバージョンを表示
~ % rbenv install --list
2.6.8
2.7.4
3.0.2
jruby-9.3.1.0
mruby-3.0.0
rbx-5.0
truffleruby-21.3.0
truffleruby+graalvm-21.3.0

Only latest stable releases for each Ruby implementation are shown.
Use 'rbenv install --list-all / -L' to show all local versions.`
  • rubyインストール
~ % rbenv install 3.0.2
Downloading openssl-1.1.1l.tar.gz...
-> https://dqw8nmjcqpjn7.cloudfront.net/0b7a3e5e59c34827fe0c3a74b7ec8baef302b98fa80088d7f9153aa16fa76bd1
Installing openssl-1.1.1l...
Installed openssl-1.1.1l to /Users/pent/.rbenv/versions/3.0.2

Downloading ruby-3.0.2.tar.gz...
-> https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.2.tar.gz
Installing ruby-3.0.2...
ruby-build: using readline from homebrew
Installed ruby-3.0.2 to /Users/pent/.rbenv/versions/3.0.2