WSL環境下でHerokuを使う
WSLがいろいろ便利になってきたので、Herokuの操作もWSLに移行してみようということで、インストールして使ってみました。
公開日: 2019.2.20
WSLがいろいろ便利になってきたので、Herokuの操作もWSLに移行してみようということで、インストールして使ってみました。
開発マシン環境
Surface Book (Core i7 / 8GB / 256GB)
Windows 10 Pro
Herokuをインストールする
まずはインストール。
macOSだったら、Homebrewからインストールができます。(というか、公式ガイドがMacではbrewコマンドで入れろってなってますしね。)
WSLでもHomebrewが使えるので試しにインストールしてみます。
brew tap heroku/brew && brew install heroku
Updating Homebrew...
==> Tapping heroku/brew
Cloning into '/home/linuxbrew/.linuxbrew/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, 148.6KB).
Updating Homebrew...
Error: No available formula with the name "herok"
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
git -C "$(brew --repo homebrew/core)" fetch --unshallow
Error: No previously deleted formula found.
==> Searching for similarly named formulae...
These similarly named formulae were found:
cherokee heroku heroku/brew/heroku heroku/brew/heroku-node
To install one of them, run (for example):
brew install cherokee
==> Searching taps...
==> Searching taps on GitHub...
Error: No formulae found in taps.
satoshi@DESKTOP-48859VI:/mnt/c/Users/satoshi/blog$ brew tap heroku/brew && brew install heroku
Updating Homebrew...
Updating Homebrew...
heroku: macOS is required.
macOSじゃないとだめだと怒られました。
snapではどうでしょう。
sudo snap install --classic heroku
error: cannot communicate with server: Post http://localhost/v2/snaps/heroku: dial unix /run/snapd.socket: connect: no such file or directory
WSLはsnap対応してない?
仕方ないので、bashから入れます。
curl https://cli-assets.heroku.com/install.sh | sh
エラーがでましたが入りました。
heroku -v
(node:28954) [EACCES] Error Plugin: heroku: EACCES: permission denied, mkdir '/home/c0d3man/.cache/heroku'
module: @oclif/[email protected]
task: runHook init
plugin: heroku
root: /usr/local/lib/heroku
See more details with DEBUG=*
(node:28954) [EACCES] Error Plugin: heroku: EACCES: permission denied, mkdir '/home/c0d3man/.cache/heroku'
module: @oclif/[email protected]
task: runHook init
plugin: heroku
root: /usr/local/lib/heroku
See more details with DEBUG=*
heroku/7.21.0 linux-x64 node-v11.9.0
パーミッション系のエラーがでてますね。
sudoで試します。
sudo heroku -v
heroku/7.21.0 linux-x64 node-v11.9.0
入ったようですね。
heroku login
ログインしてみます。
sudo heroku login
heroku: Press any key to open up the browser to login or q to exit:
Warning: spawn cmd.exe ENOENT
› Warning: Cannot open browser. Go to https://cli-auth.heroku.com/auth/browser/d06a259a-cf04-4325-bc76-757af1768201 to finish login or run heroku login --interactive
›
Logging in... done
Logged in as [email protected]
ログインできました。
heroku apps
アプリ一覧を出してみます。
sudo heroku apps
=== [email protected] Apps
aaaaa
bbbbb
ccccc
出ました。
sudoでないとだめなのが面倒ですが、問題なく使えそうです。
WSLがあれば、macOSやLinuxからWindowsへの移住がスムーズになりそうですね。