5

イメージをプッシュする Docker Hub アカウントを変更する必要があります。以前はファイルdocker loginを更新してから、次を実行しました( 、、および実際の値の一般的なプレースホルダーとして機能します):.dockercfgaccountimagetag

docker push account/image:tag

すぐに次のエラーが表示されます。

The push refers to a repository [account/image] (len: 1)
Sending image list
2014/12/11 21:26:59 Error: Status 400 trying to push repository repo/image:
"Access denied: <hash> is a private image" docker push account/image:tag
returned exit code 1action docker push repo/image:tag failed

docker ハブのプライベート リポジトリにプッシュしようとしていますが、認証が一致することを再確認しました。なぜこれが失敗するのですか?どうすれば修正できますか?

4

5 に答える 5

0

ここで同じ問題が発生しました。私の場合、Dockerfile に「FROM ubuntu:latest」という命令がありました。この場合、古いアカウントを使用してイメージをビルドし、これに ubuntu:latest をダウンロードして作成しましたが、このダウンロードは以前のアカウントを使用して行われたため、ubuntu:latest を削除しました (つまり、使用されたベース イメージ) をコンピューターから取得し、イメージを再度ビルドしました。この後、自分のイメージをプッシュすることができました。

于 2015-03-12T13:26:48.250 に答える
0

私は同じ問題を経験しましたが、その理由はプライベートな親イメージであることが判明しました。hereで説明されているように、イメージは基本イメージとほとんどの場合親イメージの上に構築されます。最新の変更を docker ハブにプッシュしようとすると、アカウントがすべての親イメージにアクセスできる必要があります。アクセスできない場合、このエラーが発生します。私の場合、プッシュしようとしたユーザーは、ベースとして使用したイメージにアクセスできませんでした。

ハッシュによってプライベート イメージを簡単に識別できます。

docker images -a | grep <hash>

プライベート リポジトリにアクセスできる場合は、プッシュしているユーザーを共同作業者のリストに追加することでこれを修正できます。ただし、そうしない場合は、ユーザーのプライベート リポジトリにタグを付け、残りの変更を手動で適用する必要があります。

お役に立てれば ;)

于 2015-02-08T12:27:54.657 に答える
0

私もこの問題に遭遇しました.Brunoのコメントはそれを修正したようです. これは、イメージを削除するための簡単な bash コメントです (これは、DockerFiles とそれらを再作成するための自動化が整っていることを前提としています): docker images | docker images | awk '{print $3}' | xargs docker rmi -f

于 2015-05-15T18:38:12.480 に答える
0

これが起こったとき、私は最新のDockerを使用していて、ubuntu:trustyから構築していました。すべての画像を削除しても解決しませんでした。親イメージ タグを trusty から古い trusty-20150630 に変更しました。

于 2015-08-05T02:45:47.173 に答える
0

なぜこれが起こったのかまだ完全には理解していませんが、修正する方法を見つけました。ローカル マシン上のすべてのイメージとコンテナーを破棄し、イメージを再構築しました。それを行った後、新しいアカウントにプッシュすることができました。

私の理論では、私が最初に作成した Docker イメージは、以前のビルドに存在していたレイヤーに依存しており、古いアカウントが利用可能だったというものです。新しいアカウントに切り替えた後、Docker Hub に存在しなくなったレイヤーに依存するイメージをプッシュしようとしたため、そのレイヤーが見つからず、Docker Hub はアクセスしようとしているものが非公開であると判断しました。 、実際には存在しなかったとき。

上記のすべてはほとんど純粋な推測であるため、この分野でより多くの知識や経験を持っている人から啓発されることを嬉しく思います.

于 2014-12-12T19:16:45.050 に答える