LoginSignup
3
0
記事投稿キャンペーン 「2024年!初アウトプットをしよう」

[Rancher Desktop] WSL2 + Rancher Desktop で発生した "error getting credentials - err: exit status 127, out: ``" に対応した

Last updated at Posted at 2024-01-07

はじめに

下記の環境で発生した掲題のエラー対応についての備忘録です。
同様のケースでお困りの方への一助となれば幸いです。

環境

環境 バージョン 備考
Windows11 Home 22H2
WSL v2.0.9.0 wsl --version で確認
Rancher Desktop v1.11.1 メニュー > Help > About Rancher Desktop で確認

前提

WSL2, ならびに Ubuntu と Rancher Desktop がインストールされていること。
Ubuntu のインストールは こちら を、 Rancher Desktop のインストールは こちら を参照しながら進めました。

課題

手前味噌で恐縮ですが、自身の React と Go の学習用リポジトリである react-and-echo-work を前掲の環境で docker-compose から起動しようとした際に以下のエラーが発生しました。

エラー

failed to solve: error getting credentials - err: exit status 127, out: ``

エラーの詳細は下記になります。

% docker-compose -f docker-compose-backend.yml up --build
[+] Building 2.5s (4/6)                                                                                                                docker:default
 => [mysql internal] load .dockerignore                                                                                                          0.1s
[+] Building 2.7s (6/6) FINISHED                                                                                                       docker:default
 => [mysql internal] load .dockerignore                                                                                                          0.1s
 => => transferring context: 2B                                                                                                                  0.0s
 => [mysql internal] load build definition from Dockerfile                                                                                       0.1s
 => => transferring dockerfile: 109B                                                                                                             0.0s
 => [api internal] load .dockerignore                                                                                                            0.1s
 => => transferring context: 34B                                                                                                                 0.0s
 => [api internal] load build definition from Dockerfile                                                                                         0.1s
 => => transferring dockerfile: 643B                                                                                                             0.0s
 => ERROR [mysql internal] load metadata for docker.io/library/mysql:8.2                                                                         2.6s
 => ERROR [api internal] load metadata for docker.io/library/golang:1.21.5                                                                       2.5s
------
 > [mysql internal] load metadata for docker.io/library/mysql:8.2:
------
------
 > [api internal] load metadata for docker.io/library/golang:1.21.5:
------
failed to solve: error getting credentials - err: exit status 127, out: ``

やったこと

エラー内容 で調べたところ、こちらのページ のトラブルシュート( pull 絡みの操作で credentials のエラー )に本件と同現象への対応が書かれておりましたので、それを参考に次の設定を行いました。

設定ファイルの編集

今回のケースは WSL 上で発生しているので、~/.docker/config.json を編集します。
私の環境では同ファイルが存在しておりませんでしたので、新規に作成しました。

% cd ~/.docker/
% touch config.json

そして config.json を次の内容で編集しました。

config.json
{
  "credsStore": "pass"
}

これで設定は終了です。
上記設定終了後に % docker-compose -f docker-compose-backend.yml up --build を実行したところ、前掲のエラーは発生せず無事起動しました。

補足

~/.docker/config.json に設定する "credsStore": "pass" については公式に説明がありますのでご参考までに。

また認証関連の記事として下記も参考にさせていただきました。ありがとうございます。

参考

3
0
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
3
0