すでに受け入れられている答えがあることに気づきましたが、このソリューションを提供したかったので、「検索を実行するためにDockerを使用せずにDockerイメージをダウンロードするにはどうすればよいですか?」
私の会社のポリシーでは、使用したいファイル(通常はURL)をチームに提供する必要があるという同様の問題があります。その後、さまざまなスキャンと監査を実行し、接続されていない開発ネットワークにファイルを配置します。Dockerを使用してファイルを取得し、それをエクスポートしてそのチームに渡すことはできません。そのため、提供された他の回答は私にとって選択肢ではありませんでした。
幸いなことに、GitHubのsamalbaが提供する便利なツールを使用することを推奨しているStackOverflowでこの答えを見つけました:https : //github.com/samalba/docker-registry-debug
もちろん、このツールはDockerを使用してビルドすることを目的としており、Dockerにオープンアクセスがないため、必要な理由の1つはDockerです:)。そのため、そのオプションがなかったため、ここで行った手順を詳しく説明します(これはすべて、そのリポジトリからのコミット05fffc4344fd6f866f84c403caae3ba81193dd45の時点のものです)。
$ go get github.com/dustin/go-humanize
$ go build
$ ./docker-registry-debug --help
$ ./docker-registry-debug curlme docker ubuntu
このコマンドの出力は、ファイルのダウンロードに使用できる完全なcurlコマンドラインです。
# Reading user/passwd from env var "USER_CREDS"
# No password provided, disabling auth
# Getting token from https://index.docker.io
# Got registry endpoint from the server: https://registry-1.docker.io
# Got token: signature=e145911c2e458b3842e4e92c90bbf5bf2c17bd56,repository="library/docker",access=read
curl -i --location-trusted -I -X GET -H "Authorization: Token signature=e145911c2e458b3842e4e92c90bbf5bf2c17bd56,repository="library/docker",access=read" https://registry-1.docker.io/v1/images/ubuntu/layer
これが誰かの助けになることを願っています!