今日は GitHub Actions を使って Docker を自動構築しているときにプッシュに失敗し、次のエラーが表示されました: ERROR: failed to solve: failed to push ghcr.io/xx:latest: unexpected status from POST request to https://ghcr.io/v2/xx/blobs/uploads/: 403 Forbidden。
一番調べた結果、原因と解決方法を示します。
〇、原因#
この問題が発生したのは、packages に repository の action 権限が与えられていないためです。ここでは、以前に削除した同名の repository が原因で、この repository はすでに package を構築していましたが、削除後に package の権限が自動的に取り消されました。そのため、新しい repository に権限がありません。
一、検索#
Google で調べたところ、似たような問題を提起した issues があり、誰かが 回答 を提供していましたが、入口は示されていませんでした:
二、解決#
- repository の packages を開く
- Docker 設定に従って packages を選択し、package settings を開く
- 権限の中に repository actions を追加し、write 権限を付与する
- 再度構築すれば大丈夫です
完了!
この記事は Mix Space によって xLog に同期更新されました。原始リンクは https://www.vikifish.com/posts/env/github-docker-build-403