dullwhaleのメモ帳

何度も同じことを調べなくてよいように...

ERROR [internal] load metadata for docker.io/library/node:alpine

Dockerイメージのpull時に以下のようなエラーメッセージが表示される。

 => ERROR [internal] load metadata for docker.io/library/node:alpine                                                                                                                                                                    0.9s
------
 > [internal] load metadata for docker.io/library/node:alpine:
------
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: ``

解決方法

1. dockerのリポジトリにログインする

docker login

Windows + WSL2ではDocker Desktopでログインしていても、CLIからログインしてないと失敗する。

2. BuildKitを無効化する

BuildKitを無効化すれば、とりあえずはpullできる。でもコンテナイメージの並列ビルドといったBuildKitの恩恵は受けられなくなる。

環境変数で無効化する方法

DOCKER_BUILDKIT=0

dockerデーモンの設定で無効化する方法

/etc/docker/daemon.json などに配置されている設定ファイルで"buildkit": falseを設定し、デーモンを再起動する。

{
  "features": {
    "buildkit": false
  }
}

Docker DesktopはGUI開いて設定を探せば見つかる。

発生した環境の情報

  • Windows 10
  • WSL2
  • Docker version 20.10.11, build dea9396
  • Docker Desktop 4.3.2 (72729)