banyandesu
@banyandesu

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

herokuにログインすることができない

解決したいこと

laravel/mysqlで趣味アプリを作成し、herokuにデプロイしようとしたところ、色々コマンドを叩いてしまいつまづいています。
heroku loginやheroku login --interactiveでログインすることができなくなってしまいました。。

発生している問題・エラー

(node:63236) UnhandledPromiseRejectionWarning: Error: EACCES: permission denied, mkdir '/Users/名前.local/share/heroku'
(node:63236) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:63236) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

heroku: Press any key to open up the browser to login or q to exit: 
Error: tunneling socket could not be established, cause=getaddrinfo ENOTFOUND proxy.server.com
    at ClientRequest.onError (/usr/local/lib/heroku/node_modules/tunnel-agent/index.js:177:17)

自分で試したこと

この辺りが怪しいのかなと思い試しましたが、変わらずエラーが出ます。

export HTTP_PROXY=http://proxy.server.com:portnumber
or
export HTTPS_PROXY=https://proxy.server.com:portnumber
heroku login

php:7.2.5
laravel/framework:7.18.0
mysql: 8.0.22 for osx10.13 on x86_64 (Homebrew)
mac(linux)

0

1Answer

https://qiita.com/banyandesu/questions/10a21125f76d190448c0 こちらのコメントでも回答しましたが、パーミッションが正しくないせいで ~/.local/share/heroku が作成できないようです。その上の階層の ~/.local/share か ~/.local の所有権が sudo heroku を実行したせいでおかしいのが原因です。以下の手順で所有権を修正してください。

まず ls -lad ~ でホームディレクトリの所有権を見てください。

(例)
$ ls -lad ~
drwxr-xr-x 67 uasi staff 2144 12 18 13:47 .

例では uasi がユーザー名、その次の staff がグループ名です。そして

sudo chown -R uasi:staff ~/.local
(uasi:staff の部分をご自分のユーザー名:グループ名に置き換えてください)

を実行すると ~/.local とその子孫のすべての所有権が変更されます。

1Like

Your answer might help someone💌