📌

docker imageをregistry にpushする際にエラーが出た

2023/10/09に公開

概要

https://www.koyeb.com/tutorials/dockerize-deploy-and-run-a-ruby-on-rails-app をもとにrailsのdockerimageをregistryにpushしようとした。
その際にunauthorized: unauthenticated: User cannot be authenticated with the token provided.が発生した。
解決に手間取ったので、解決策を残す。

解決手順概要

  1. docker hubにログイン
  2. Access Tokenを発行
  3. docker logoutコマンドでdockerからログアウト
  4. mv ~/.docker/config.json ~/.docker/config_bk.jsonコマンドでdocker関係の設定ファイルを無効化[1]
  5. docker login -u <USR_NAME>を実行
  6. パスワード入力欄で2のトークンを入力
  7. ログイン
  8. https://github.com/settings/tokensにて、github用のアクセストークンを発行。その際にread/write packagesを付与[2]
  9. 8で発行したトークンをもとにdocker login ghcr.io -u username -p ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxでgithubレポジトリ?にログイン
脚注
  1. https://zenn.dev/bon/scraps/d0099eddd9f215#comment-c3e34a9b40edec ↩︎

  2. https://stackoverflow.com/questions/75924590/pushing-to-github-container-registry-unauthorized-unauthenticated-user-cannot ↩︎

Discussion