📐
ghcr.io docker container registry 個人利用方法
GitHub Container Registry(ghcr.io)にDockerイメージをpushする手順 #DockerHub - Qiita と同じような内容。詳しく知りたい人はそっちのほうがいいかも。
以下にデモを短く書く。
- 前提: Macを使う。Docker Desktop が起動していて docker コマンドが利用できること。
- なんでもいいので docker imageを用意する。今回は以下の手順で
ghcr.io/hoshinotsuyoshi/busybox
というイメージをこしらえる。 hoshinotsuyoshi は 私のGitHubのアカウント名。
# なんでもいいが 有名な軽いイメージを pullする
$ docker pull busybox
# タグを付ける
$ docker tag busybox ghcr.io/hoshinotsuyoshi/busybox
-
https://github.com/settings/tokens/new で New personal access token(classic)を生成する。 docker pushしたいので
write:packages
を選択する - 作ったtokenをクリップボードにコピーして docker loginする。
$ pbpaste | docker login ghcr.io -u hoshinotsuyoshi --password-stdin
Login Succeeded
(もしくは以下の"ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" の部分を置き換える)
$ echo "ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" | docker login ghcr.io -u hoshinotsuyoshi --password-stdin
Login Succeeded
- pushする
$ docker push ghcr.io/hoshinotsuyoshi/busybox
そうすると 自分のGitHubのページの packagesタブのところに現れる。具体的には自分の場合は
https://github.com/hoshinotsuyoshi?tab=packages のところにいまpushしたimageが現れる。
必要に応じて Change package visibility
から private -> public化が行える。
Discussion