このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
【Docker入門】Dockerイメージを公開する

ここでは、作成したイメージをDocker Hubに公開(アプロード)します。
下図でいうと「⑤イメージの公開」のところになります。

イメージ公開の流れ
イメージを公開するステップは以下のようになります。
①Docker イメージのタグ付け
②Docker Hub へのログイン
③Docker イメージのアップロード
④Docker Hub からログアウト
それでは、各ステップを一つずつ試していくことにします。
① Docker イメージのタグ付け
最初に、ローカルでビルドされた Docker イメージに適切なタグを付けます。タグは、イメージのバージョンやリリースを識別するのに役立ちます。例えば、「docker image tag
」 コマンドを使用して、イメージに適切な名前を付けることができます。
Docker Hub に登録するイメージは以下の構文に従う必要があります。
【構文】
Docker Hubのユーザー名/イメージ名:[タグ名]
docker image tag ubuntu-echo infralinux1/ubuntu-smp:1.0
docker image tag | ubuntu-echo | infralinux1 | / | ubuntu-smp | :1.0 |
イメージにタグ付けする | ベースイメージ | Docker Hub上のユーザー名 | 区切り | イメージ名 | タグ名 |
・「docker image tag ubuntu-echo infralinux1/ubuntu-smp:1.0」コマンドを実行します。
PS C:\Users\joeac> docker image tag ubuntu-echo infralinux1/ubuntu-smp:1.0
・「docker image ls」コマンドで確認します。
PS C:\Users\joeac> docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest ca2b0f26964c 13 days ago 77.9MB
infralinux1/ubuntu-smp 1.0 9a9568f10c24 13 days ago 77.9MB
ubuntu-echo latest 9a9568f10c24 13 days ago 77.9MB
「infralinux1/ubuntu-smp」が「1.0」でタグ付けされていることが確認できます。
② Docker Hub へのログイン
次に、Docker Hub にログインします。Docker Hub は、Docker イメージのレジストリであり、イメージを保存し、共有するためのプラットフォームです。「docker login
」コマンドを使用して、Docker Hub アカウントにログインします。
・Docker Desktopでサインインしていない場合は、「docker login」コマンドを実行します。
Docker Hub で作成したユーザー名、パスワードを入力します。
Username・・・作成したユーザー名を入力
Password・・・該当するパスワードを入力
Docker Desktopでサインインしていない場合は、以下のようにUsername、Passwordを入力してログインします。。
PS C:\Users\joeac> docker login
Log in with your Docker ID or email address to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com/ to create one.
You can log in with your password or a Personal Access Token (PAT). Using a limited-scope PAT grants better security and is required for organizations using SSO. Learn more at https://docs.docker.com/go/access-tokens/
Username: infralinux1 # ユーザー名を入力
Password: # パスワードを入力
下図のように「Docker Desktop」上でサインインしている場合は、コマンドでのログイン操作は必要ありません。GoogleアカウントでDocker Hubに登録している場合は、こちらから「Sign in」する方が便利です。

③ Docker イメージのアップロード
ログインしたら、タグ付けされた Docker イメージを Docker Hub にアップロードします。これには、「docker image push
」コマンドを使用します。このコマンドを使用すると、ローカルのイメージがリモートの Docker Hub にアップロードされます。
・Docker Desktopの「Images」タブ内の「Hub」タブを確認します。
Docker Hub上にアップロードされているイメージはまだありません。

コマンドの構文は以下となります。
docker image push infralinux1/ubuntu-smp:1.0
docker image push | infralinux1 | / | ubuntu-smp | :1.0 |
イメージのアップロード | Docker Hub上のユーザー名 | 区切り | イメージ名 | タグ名 |
・「docker image push infralinux1/ubuntu-smp:1.0」コマンドを実行します。
PS C:\Users\joeac> docker image push infralinux1/ubuntu-smp:1.0
The push refers to repository [docker.io/infralinux1/ubuntu-smp]
5498e8c22f69: Mounted from library/ubuntu
1.0: digest: sha256:e3be8338a6f55fb6f16d5a56a6eff6cb1a5b3ffce19f0bcbf151f64d8e50cc9c size: 529
・再度、Docker Desktopの「Images」タブ内の「Hub」タブを確認します。
Docker Hub上にイメージがアップロードされています。

④ Docker Hub からログアウト
最後に、アップロードが完了したら、セキュリティ上の理由から Docker Hub からログアウトします。「docker logout
」コマンドを使用してログアウトコマンドを実行しするか、Docker Desktopから「Sign Out」します。
Docker Desktopから「Sign Out」するには、下図の赤枠のところをクリックします。

コマンドでログアウトするには以下のコマンドを実行します。
・「docker logout」コマンドを実行します。
PS C:\Users\joeac> docker logout
Removing login credentials for https://index.docker.io/v1/
これで、Docker イメージのアップロード処理が完了しました。これにより、他の開発者やチームメンバーがイメージを共有し、必要に応じてデプロイすることができます。