概要
nvcr.io/nvidia/pytorch:23.08-py3 のような Docker image を利用しようとしたときに、以下のようなエラーが出て困りました。
そのときの対処法です。
=> ERROR [internal] load metadata for nvcr.io/nvidia/pytorch:23.08-py3 0.2s
------
> [internal] load metadata for nvcr.io/nvidia/pytorch:23.08-py3:
------
failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to create LLB definition: failed to authorize: rpc error: code = Unknown desc = failed to fetch anonymous token: unexpected status: 401 Unauthorized
動作環境
| item | version |
|---|---|
| OS | wsl2 |
| docker | Docker version 20.10.18, build b40c2f6 |
やること
- NVIDIA NGC のアカウント作成
- API key の作成
- docker login
ちょっと面倒です。が、GPT は適当なことを教えてくるので、何も知らないともっと面倒です。
この記事が少しでも手助けになると嬉しいです(*´v`)
1. NVIDIA NGC のアカウント作成
以下のサイトにアクセスし、
画面右上から、「Welcome Guest」-->「Sign In / Sign Up」の順にクリックしてください。
地味に長い手順ですが、頑張りましょう (*^ワ^) (助ける気がない)
2. API key の作成
アカウント作成が終わったら、再度画面右上から、「Account Settings」にアクセスします。
リンク先の画面を下にスクロールすると「Generate API Key」という黄緑色のボタンが見つかるはず。ここから API key を作成できます。
API key の中身は一度しか確認できないので、コピーしてどこかに保存しておきましょう。
3. docker login
さて次は、 API Key を使って、 nvidia の docker image サービスにアクセスします。
コマンドはこのまんま打ってください。一言一句変えずに。
docker login nvcr.io --username '$oauthtoken'
で Password: と出てきたら、
Password:
ここで初めて API key を入力してください。これでログインできます。
以下のように表示されれば成功。これで、 docker pull できるようになっているはずです!!
Login Succeeded
参考記事
本家: NVIDIA GPU Cloud Documentation (重要)
API について
NVIDIA NGC の API key は2種類あるらしい。どっちが何に使えて、どっちは何かには使えない、みたいな話はここを読むと良いです。これを理解しないと、先へ進めませんでした。
ちなみに、 docker login のやり方、 API Key の使い方もこの記事に載っているので、きちんと理解したい方には必見の記事です。
その他の関連記事
以下の記事には色々面白い関連情報が載っていますが、今回のこの記事で紹介した話は載っていませんでした。
API key の作成方法も書かれてはいるが、過去の情報であり今は参考にはできない。


