14
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Heroku】herokuを扱う際必須コマンド

Last updated at Posted at 2020-03-07

✨herokuを扱う際必須コマンド

アプリの変更をステージング&コミットしてデプロイする

terminal
> git add -A

> git commit -m "コメント"

> git push heroku master

heroku上でRailsデータベースをマイグレイト

terminal
> heroku run rails db:migrate

herokuのエラーログを追うには

terminal
> heroku logs --tail

だったり

> heroku run rails console

heroku上でのデータの確認とかカラムの確認とか

terminal
> heroku run rails console
すると対話モードになるから、なったら
> User.all #Userモデルのレコードを全て見れる
> User.new #Userモデルのカラムを確認できる
> User.destroy_all #Userモデルのデータを全て削除できる

herokuのデータベースのUp/Downをみたい時

terminal
> heroku run rails db:migrate:status

heroku上でマイグレーションファイルをDownにしたい時

terminal
> heroku run rails db:migrate:down VERSION=マイグレーションID

heroku上でデータベースのリセットをしたい時

terminal
> heroku pg:reset DATABASE

heroku loginしても何も動かん時

terminal
> heroku login --interactive

herokuをメンテナンスモードにする

terminal
> heroku maintenance:on # メンテナンスモードON

> heroku maintenance:off #メンテナンスモードOFF

✨おまけ:エラー解決方法集

usr/bin/env 'ruby¥r'みたいなもんが出る

そんな時はbinフォルダの中のファイルたちを一個ずつ開いて
スクリーンショット 2020-08-09 0.09.05.png
ここをCRLFからLFにしよう
Herokuの文字コードがLFだからね

こんなエラーが出たら.bundle/configファイルの中身は.gitignoreにして.bundleごと消そう

terminal
> You have the `.bundle/config` file checked into your repository
remote:         It contains local state like the location of the installed bundle
remote:         as well as configured git local gems, and other settings that should
remote:        not be shared between multiple checkouts of a single repo. Please
remote:        remove the `.bundle/` folder from your repo and add it to your `.gitignore` file.
remote:        https://devcenter.heroku.com/articles/bundler-configuration
terminal
> rm -r .bundle 
> vi .gitignore
そしてもともと.bundle/configに書かれていた内容を.gitignoreに

heroku logs --tailしてこんなエラーが出る時

terminal
> Must supply cloud_name in tag or in configuration

これは画像投稿のcloudinaryを使ってて、Herokuにcloudinaryを登録してない時に起こるエラー

terminal
> heroku addons
↑これしてみて。多分cloudinaryが登録されてない
 
↓これで登録しよう(自分の.envのファイルの中身見て以下の=以降は埋めてね)
> heroku config:set CLOUD_NAME=
> heroku config:set CLOUDINARY_API_KEY=
> heroku config:set CLOUDINARY_API_SECRET=

それでもうまくいかんかったら
・.envの位置がアプリディレクトリ直下じゃない(Gemfileとかと同じレベルじゃないとあかん)
・cloudinaryのメールで本登録してない
・そもそもimageカラム作れてない
・カラムはあるけどStrong Parameter作れてない

以下のようなエラーが出る時

terminal
[2262533e-0eda-4363-80d5-dae786ab4f5d] ActionView::Template::Error (Webpacker can't find application in /app/public/packs/manifest.json. Possible causes:
2020-03-06T23:24:34.856297+00:00 app[web.1]: 1. You want to set webpacker.yml value of compile to true for your environment
2020-03-06T23:24:34.856298+00:00 app[web.1]: unless you are using the `webpack -w` or the webpack-dev-server.
2020-03-06T23:24:34.856298+00:00 app[web.1]: 2. webpack has not yet re-run to reflect updates.
2020-03-06T23:24:34.856299+00:00 app[web.1]: 3. You have misconfigured Webpacker's config/webpacker.yml file.
2020-03-06T23:24:34.856299+00:00 app[web.1]: 4. Your webpack configuration is not creating a manifest.
2020-03-06T23:24:34.856300+00:00 app[web.1]: Your manifest contains:
2020-03-06T23:24:34.856301+00:00 app[web.1]: {
2020-03-06T23:24:34.856302+00:00 app[web.1]: "application.js": "/packs/js/application-f09b38235916b51efe8a.js",
2020-03-06T23:24:34.856302+00:00 app[web.1]: "application.js.map": "/packs/js/application-f09b38235916b51efe8a.js.map",
2020-03-06T23:24:34.856302+00:00 app[web.1]: "entrypoints": {
2020-03-06T23:24:34.856303+00:00 app[web.1]: "application": {
2020-03-06T23:24:34.856306+00:00 app[web.1]: "js": [
2020-03-06T23:24:34.856307+00:00 app[web.1]: "/packs/js/application-f09b38235916b51efe8a.js"
2020-03-06T23:24:34.856307+00:00 app[web.1]: ],

これはうまくwebpackerが導入できていない証

terminal
> rails webpacker:install
> rails webpacker:compile
して
> heroku run rails webpacker:install
> heroku run rails webpacker:compile
してあげたら治ることもある

それでも無理なら

views>layouts>application.html.erb
このファイルの中にある
javascript_pack_tagみたいな一行をコメントアウトしてあげて!
<%= javascript_pack_tag,~ %>
を↓
<%# javascript_pack_tag,~ %>
こんな感じに!
14
11
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
14
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?