DockerhubからGithub Container Registry にイメージを移行する際の自分用メモです。
背景
https://github.blog/2020-09-01-introducing-github-container-registry/
9/1 に公開された GitHub Container Registry(以下、ghcr) を使用してみる。
現在(2020/09/03)ではパブリックベータ版なので、変更になる可能性がある。
Docker Hubに保存したコンテナイメージ、無料プランでは6カ月間使われないと削除へ - Publickey
また、Dockerhubの無料プランでは使用されていないコンテナが削除されてしまうように仕様が変更された。
つまり、
「Docker Hub の需要が増えて制約が多くなったので、無料プランなら Github Container Registry を使っていこう。」
前提条件
- Githubに登録していること
- パーソナルアクセストークンを作成していること
- packagesにread,write,delete権限があること
- パーソナルアクセストークンを作成していること
ghcrには以下のコマンドでログインする
docker login ghcr.io -u $OWNER #Githubのアカウント名
Password: <パスワードはパーソナルアクセストークンを入力>
Login Succeeded
以下のコマンドで、Docker Hub から移行する
docker pull $OWNER/$IMAGE_NAME:$VERSION
docker tag $OWNER/$IMAGE_NAME:$VERSION ghcr.io/$OWNER/$IMAGE_NAME:$VERSION
docker push ghcr.io/$OWNER/IMAGE_NAME:$VERSION
ghcrにpushしたcontaner image をPublicに設定してdocker pull
できることを確認する
docker pull ghcr.io/$OWNER/$IMAGE_NAME:$VERSION
Reference
GitHub Container Registry 入門
GitHub Container Registryのパブリックベータをリリース - GitHubブログ