iMacでHerokuにCLIログインしてみる


目標

macOSにHeroku CLIをインストールしてログインする

Linux初心者です。諸般の事情によりMacを使う事になったのでいろいろやってみます。
今回はHerokuというものにMacからターミナルからアクセスします。

いや、Herokuってなにかなー なんかWebアプリを簡単にデプロイできて、公開もできて、にしては安いって事を聞いて、いろいろ見て回って無料アカウントも作ってみたんです

で、このページ (ログインしないと見れません)で、おっ、Node.jsのアプリも行けるんだぁ と、Node.jsのアイコンをクリックしたらチュートリアルっぽい画面になって、「うし、やってみるか」って事で"I'm ready to start"ボタンを押した以降が↓です。

参考にさせていただいたページ

Herokuってなんなの?
Heroku初心者がHello, Herokuをしてみる
HomeBrewでgitを入れる(エラーから解消まで
macでheroku deploy
Herokuを使いこなすのに必要な術
herokuで本番環境までを構築する上で知っておきたいこと

準備

  • macOS Mojava v10.14.6
  • Homebrew v2.1.11
  • Heroku(webページで)アカウント作成済み

Heroku Command Line Interface (CLI)のインストール

どうもHerokuをいろいろするのには、Web画面からもできるらしいけれど、ローカルPCにコマンド・ライン・ツール(CLI)をインストールするといいらしい。
なのでインストールします。

  • インストーラーも提供されているようだけど、とうせならという事でHomebrewでインストールする
  • Homebrew用コマンドもちゃんと書いてくれている事ので、それで
$ brew install heroku/brew/heroku
  • heroku/brew というリボジトリにある heroku をインストールしろ って事ですね
  • いあいあ、私のHomebrewに heroku/brew はTapされてないし
$ brew tap
caskroom/cask
homebrew/cask
homebrew/core
  • という事でせっかくなのでTapから行きます
$ brew tap heroku/brew
・・・
・・・
==> Tapping heroku/brew
Cloning into '/usr/local/Homebrew/Library/Taps/heroku/homebrew-brew'...
remote: Enumerating objects: 10, done.
remote: Counting objects: 100% (10/10), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 10 (delta 0), reused 7 (delta 0), pack-reused 0
Unpacking objects: 100% (10/10), done.
Tapped 2 formulae (38 files, 28.6KB).
  • そして Heroku のインストール
$ brew install heroku
==> Installing heroku from heroku/brew
Error: Xcode alone is not sufficient on Mojave.
Install the Command Line Tools:
  xcode-select --install
  • このMacにxcode-select 入ってなかった・・・
  • なので指示どおりにインストール
$ xcode-select --install
  • 再度、Heroku のインストール
$ brew install heroku
・・・
・・・
Error: An exception occurred within a child process:
  Errno::EPERM: Operation not permitted @ dir_s_mkdir - /usr/local/Cellar
  • エラーです・・・。 /usr/local/Cellar というディレクトリが権限無くてつくれないみたい
  • sudoで実行してみます
$ sudo brew install heroku
Password:
Error: Running Homebrew as root is extremely dangerous and no longer supported.
As Homebrew does not drop privileges on installation you would be giving all
build scripts full access to your system.
  • なんか怒られました
  • Homebrew 自体を調べます
 $ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!

Warning: The following directories do not exist:
/usr/local/include
/usr/local/lib
/usr/local/opt
/usr/local/sbin
/usr/local/Cellar

You should create these directories and change their ownership to your account.
  sudo mkdir -p /usr/local/include /usr/local/lib /usr/local/opt /usr/local/sbin /usr/local/Cellar
  sudo chown -R $(whoami) /usr/local/include /usr/local/lib /usr/local/opt /usr/local/sbin /usr/local/Cellar
Dice-no-iMac:~ dice$ 
$ brew install heroku
・・・
・・・
==> Summary
🍺  /usr/local/Cellar/heroku/7.33.0: 18,675 files, 49.4MB, built in 46 seconds
==> `brew cleanup` has not been run in 30 days, running now...
==> Caveats
==> heroku
To use the Heroku CLI's autocomplete --
  Via homebrew's shell completion:
    1) Follow homebrew's install instructions https://docs.brew.sh/Shell-Completion
        NOTE: For zsh, as the instructions mention, be sure compinit is autoloaded
              and called, either explicitly or via a framework like oh-my-zsh.
    2) Then run
      $ heroku autocomplete --refresh-cache

  OR

  Use our standalone setup:
    1) Run and follow the install steps:
      $ heroku autocomplete

Bash completion has been installed to:
  /usr/local/etc/bash_completion.d

zsh completions have been installed to:
  /usr/local/share/zsh/site-functions
  • インストール成功です
  • なんかbrew cleanupしろとアドバイスしてくれてます。
  • 指示にしたがってコマンドを実行します
$ heroku autocomplete --refresh-cache
Building the autocomplete cache... ?
heroku: Press any key to open up the browser to login or q to exit: Building the
  • とりあえずEnterキー押すと、Webブラウザが立ち上がって"Log in to the Heroku CLI"画面が表示されます
  • ログインするとターミナルの方に伝わって done となります
Opening browser to https://cli-auth.heroku.com/auth/browser/df07f955-xxxxx-xxxx-xxxxx-xxxxxxxxxx
heroku: Waiting for login... done
  • のタイミングでPCいきなり無言でダウン・・・画面真っ暗ですorz
  • 電源入れて、いざログイン
$ heroku login
heroku: Press any key to open up the browser to login or q to exit: 
Opening browser to https://cli-auth.heroku.com/auth/browser/206ec5fc-xxxx-xxxx-xxxx-xxxxxxxxxxx
Logging in... done
Logged in as <<登録したメールアドレス>>
  • ログイン成功
  • ちゃんとログインログインできてるのかわかりずらい
  • とりあえず確認
$ heroku --version
heroku/7.33.0 darwin-x64 node-v11.14.0
  • ローカルのnodeとはバージョンが違うからHerokuの中にいるのかしらん
$ heroku apps
You have no apps.
  • うん、一応繋がってるみたい
  • では、ログアウト
$ heroku logout
Logging out... done
  • お疲れ様でした

おわりに

いきおいでやり始めたので、ログインできた時点で力尽きました
やはり、コマンドラインだけの世界にはまだ慣れないです

Windowsユーザーのみなさんの参考になればと思います。