docker compose buildのエラー

2023/02/24に公開

環境はM2のMacbook Air

docker compose buildすると何故か以下のようなエラーが出る事がある。

error getting credentials - err: exit status 1, out: ``

とか

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: ``

とか。

ぐぐると、いろんな解決方法が出るが効果があったのは

~/.docker/config.jsonがこうなってるのを

{
  "auths": {
    "index.docker.io/v1/": {}
  },
  "credsStore": "desktop"
}

{
  "auths": {
    "index.docker.io/v1/": {}
  },
  "credStore": "desktop"
}

credsStorecredStoreに変えるというよくわからない対応方法だった。
credsStoreを参照できなくすることで回避しているだけに見える。
そしてdocker desktopを再起動すると元の木阿弥でこうなってしまう。

{
  "auths": {
    "index.docker.io/v1/": {}
  },
  "credStore": "desktop",
  "credsStore": "desktop"
}

気持ち悪いので、こうしたら直った。

{
  "auths": {
    "index.docker.io/v1/": {}
  },
  "credsStore": "osxkeychain"
}

参考情報
https://docs.docker.jp/engine/reference/commandline/login.html#id11

Discussion