LoginSignup
5
0

More than 5 years have passed since last update.

railsアプリを一瞬でデプロイできるHeroku 私的tips

Last updated at Posted at 2018-12-20

高知工科大学2018AdventCalendar

この記事は高知工科大学2018AdventCalendar2日目の記事です。
(12/20 now)

Herokuとは

image.png

Herokuって検索してでてくる、こんな感じのアイコンのwebサービスです。
無料で、10分程度でwebアプリケーションを世界中に公開することができます。
登録方法は他のサイトで解説されているので、そちらを参照するのがいいと思います。
https://tech-camp.in/note/technology/16108/

今回はrailsアプリをherokuにアップロードしようとして詰まった箇所をまとめていこうと思います。
デプロイはエラーがつきものなので、遭遇するたびに追加していきたいです。

Tips

herokuのrubyバージョンを下げる時に使うコマンド

$  heroku stack:set heroku-16

エラーが英語で出てくるのでわかりやすいと思います。

remote:  !     An error occurred while installing ruby-2.3.1
remote:  !     
remote:  !     This version of Ruby is not available on Heroku-18. The minimum supported version
remote:  !     of Ruby on the Heroku-18 stack can found at:
remote:  !     
remote:  !     https://devcenter.heroku.com/articles/ruby-support#supported-runtimes

rails_app/app/assets/imagesの画像エラー

画像のプリコンパイラができていないと発生します。

config/environmernt/production.rb
  config.assets.compile = true

この部分がデフォルトではfalseになっているので気をつけてください。
deployの時に画像のあたりでエラーが起きると思ったら確認してみてください。

 どうあがいてもherokuにpushできない

$ heroku create
$ git push heroku master

この二つのコマンドでherokuにdeployできるんですが、自分なりにエラーを探っているうちに、heroku createで作成したサイトを削除したり、ログインを変えてみたりすることがあると思います。そんなことをしていると、このアプリと接続しているherokuのリポジトリと、自分が接続したいherokuのリポジトリが食い違っていることがあります。そんなときはどうあがいてもherokuにpushできません。

$ heroku open

このコマンドを使えば接続されているherokuのアプリが開けるんですけど、存在しない場合は開くことができませんし、自分が接続しているリポジトリのurlがわからなければ、herokuのアプリを管理しているときにそのurlを誤って削除してまうこともあります。(無料版のherokuは5つしかurlを同時にもてないため)

そんな時は接続されているリポジトリを確認するコマンドと、接続するリポジトリを変更するコマンドを使いましょう。
確認.shell
$ git remote -v
変更.shell
$ git remote set-url heroku herokuのurl.git

ここら辺はgitのコマンドぽいのですが、勉強不足でgitとherokuについての理解が足りないので、また追記しようと思います。

to be Continued...

誤字脱字や記事の間違いなどの指摘よろしくお願いします。

編集履歴

2018/12/20 記事作成
2018/12/28 adventcalendarに参加していることを追記

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0