
docker-compose up -d
するも
failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to create LLB definition: rpc error: code = Unknown desc = error getting credentials - err: exit status 1, out:
error getting credentials - err: exit status 1, out: keychain cannot be accessed because the current session does not allow user interaction. The keychain may be locked; unlock it by running "security -v unlock-keychain ~/Library/Keychains/login.keychain-db" and try again
``
とのエラーで失敗する場合。
yaju@yajusenpaiMacBook-Pro docker-laravel-handson % docker-compose up -d
[+] Building 0.0s (0/0)
[+] Building 0.1s (1/2)
=> [internal] load build definition from Dockerfile 0.0s
[+] Building 0.2s (2/3)
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 32B 0.0s
[+] Building 1.0s (3/3) FINISHED
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 32B 0.0s
[+] Building 1.0s (3/3) FINISHED
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 32B 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> ERROR [internal] load metadata for docker.io/mysql/mysql-server:8.0 0.8s
------
> [internal] load metadata for docker.io/mysql/mysql-server:8.0:
------
failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to create LLB definition: rpc error: code = Unknown desc = error getting credentials - err: exit status 1, out: `error getting credentials - err: exit status 1, out: `keychain cannot be accessed because the current session does not allow user interaction. The keychain may be locked; unlock it by running "security -v unlock-keychain ~/Library/Keychains/login.keychain-db" and try again``
原因と解決方法
Macを他の端末からsshなどで操作していると起こりがち。
直接端末を操作するか、今の状態のまま
security -v unlock-keychain ~/Library/Keychains/login.keychain-db
を叩くと解決する。
Macにログインするときのパスワードも求められるから叩いてね。
ちなみに一度うまくいったら、次回以降docker-compose up -d
したときにはsshからでもうまくいくようになる。
chatgptさんもそう言ってた。
ローカルマシンで、ターミナルで
security -v unlock-keychain ~/Library/Keychains/login.keychain-db
を実行し、キーチェーンをロック解除します。
- dockerコマンドを再度実行してみてください。Dockerは、必要なクレデンシャルを取得できるはずです。
- まだ同じエラーが発生する場合は、
docker login
コマンドを使用してDocker Hubにログインしてみてください。その後、再びdocker-compose up -d
コマンドを実行してみてください。- まだ同じエラーが発生する場合は、Docker Engineが最新のバージョンであることを確認してください。また、可能であれば、Docker Engineを再インストールしてみてください。
エラー内容翻訳しても同じようなことが書いてるンゴ。
現在のセッションがユーザーとの対話を許可していないため、
keychain' にアクセスできません。security -v unlock-keychain ~/Library/Keychains/login.keychain-db" を実行してロックを解除し、再試行してください`。