DockerHubの使い方【イメージ公開→ダウンロード→削除を解説】

 

★悩み★
・基本的なDockerHubの使い方を知りたいな。
・Dockerで作成したコンテナイメージをDockerHubに公開したいな。
・DockerHubに公開されたコンテナイメージをダウンロードしたいな。
・DockerHubに公開(アップロード)したコンテナイメージを削除したいな。



こういった「悩み」に答えます。
 

★本記事の内容★
① DockerHubにコンテナイメージを公開するまでの準備をご紹介
② DockerHubの基本的な使い方(公開→ダウンロード→削除)をご紹介
➂ DockerHub利用時の注意点とよく聞く質問



これからご紹介する「DockerHubの使い方(イメージ公開→ダウンロード→削除を解説)」を実践したことで、30分以内で「DockerHubにコンテナイメージを公開(アップロード)」できました。

記事の前半では「DockerHubを使うまでの準備(アカウント作成とdockerのインストール)」を解説しつつ、記事の後半では「DockerHubの基本的な使い方(公開→ダウンロード→削除)」を紹介します。

この記事を読み終えることで、「DockerHubの基本的な使い方(公開、ダウンロード、削除)を把握した」状態になります。
 

DockerHubにコンテナイメージを公開するまでの準備


「DockerHubにコンテナイメージを公開するまでの準備」に関してご紹介します。

★DockerHubにコンテナイメージを公開するまでの準備の流れ★
手順1:DockerHubのアカウント(ID)を作成する(SignUp)
手順2:Dockerをインストール
手順3:Dockerを起動
手順4:DockerHubに公開する「Dockerのコンテナイメージ」を作成



上記の流れで、「DockerHubにコンテナイメージを公開するための準備」ができます。
 

上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2021年6月17日
動作確認済み環境:CentOS Linux release 7.7.1908 (Core)



以降で、上記「DockerHubにコンテナイメージを公開するまでの準備の流れ」の各手順に関してご説明します。
 

手順1:DockerHubのアカウント(ID)を作成する(SignUp)

「手順1:DockerHubのアカウント(ID)を作成する(SignUp)」に関してご説明します。
 

DockerHubにコンテナイメージを公開するためには、DockerHubのアカウント(ID)が必要です。



「DockerHubのアカウント(ID)を作成する(SignUp)手順」に関しては、以下の記事をご覧ください。
 


 

既にDockerHubのアカウント(ID)を持っている方は、本手順を省略してください。



以上で、「手順1:DockerHubのアカウント(ID)を作成する(SignUp)」は完了です。
 

手順2:Dockerをインストール【公開するイメージの作成に必要】

「手順2:Dockerをインストール」に関してご説明します。
 

DockerHubに公開したいコンテナイメージを作成するために、Dockerをインストールしましょう。



「Dockerをインストールする手順」に関しては、下記記事の「手順1:Dockerをインストールをご覧ください。
 

  
 

既にDockerをインストールされている方は、本手順を省略してください。



以上で、「手順2:Dockerをインストール」は完了です。
 

手順3:Dockerを起動【コンテナイメージ作成に必要】

「手順3:Dockerを起動」に関してご説明します。
 

Dockerのコンテナイメージを作成するためには、Dockerを起動する必要があります。



「Dockerをインストールする手順」に関しては、下記記事の「手順2:Dockerを起動」をご覧ください。
 



以上で、「手順3:Dockerを起動」は完了です。
 

手順4:DockerHubに公開する「Dockerのコンテナイメージ」を作成

「手順4:DockerHubに公開する「Dockerのコンテナイメージ」を作成」に関してご説明します。
 

DockerHubに公開(アップロード)するための「Dockerのコンテナイメージ」を作成しましょう。



「Dockerのコンテナイメージを作成する手順」に関しては、以下の記事をご覧ください。
 


以降の手順では、「fastapi:1 というDockerコンテナイメージを作成した」想定として手順を解説します。
 

以上で、「手順4:DockerHubに公開する「Dockerのコンテナイメージ」を作成」は完了です。
 

上記の流れで、DockerHubにコンテナイメージを公開するまでの準備ができました。

 
 

DockerHubの基本的な使い方(公開→ダウンロード→削除)


「DockerHubの基本的な使い方(公開→ダウンロード→削除)」に関してご紹介します。

★DockerHubの基本的な使い方★
・作成したDockerのコンテナイメージをDockerHubへ公開(アップロード)
・DockerHubに公開(アップロード)されたコンテナイメージをダウンロード
・DockerHubに公開(アップロード)したコンテナイメージを削除



DockerHubの基本的な使い方として、上記があります。
 

上記の各項目は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2021年6月17日
動作確認済み環境:CentOS Linux release 7.7.1908 (Core)



以降で、上記「DockerHubの基本的な使い方」の各項目に関してご説明します。
 

作成したDockerのコンテナイメージをDockerHubへ公開(アップロード)

「作成したDockerのコンテナイメージをDockerHubへ公開(アップロード)」に関してご説明します。
 

dockerコマンドを用いて、DockerのコンテナイメージをDockerHubへ公開(アップロード)してみましょう。



以下のコマンドを実行し、CLI経由でDockerHubへログインしましょう。

# docker login
Login with your Docker ID 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.
Username: herokakedashi
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded



コマンド実行後、「Login Succeeded」が表示された場合、「CLI経由でDockerHubへログインできた」と判断できます。


次に、以下のコマンドを実行し、作成したDockerのコンテナイメージをDockerHubへ紐付けましょう。コマンド中の「適宜変更」と書いてある部分は、自分用に書き換えてください。

# docker images | grep fastapi
fastapi                                1                   5950e0da1480        2 weeks ago         51.9MB
[root@develop ~]# docker tag 5950e0da1480 herokakedashi/fastapi #適宜変更(DockerHubのアカウント名/fastapiの形式で記載すること)
# docker images | grep fastapi
herokakedashi/fastapi                  latest              5950e0da1480        2 weeks ago         51.9MB
fastapi                                1                   5950e0da1480        2 weeks ago         51.9MB
# 



コマンド実行後、「DockerHubのアカウント名/fastapi」が表示された場合、「作成したDockerのコンテナイメージにDockerHubを紐付けられた」と判断できます。
 

最後に、以下のコマンドを実行し、作成したDockerのコンテナイメージをDockerHubに公開(アップロード)しましょう。コマンド中の「適宜変更」と書いてある部分は、自分用に書き換えてください。

# docker push herokakedashi/fastapi #適宜変更(DockerHubのアカウント名/fastapiの形式で記載)
The push refers to repository [docker.io/herokakedashi/fastapi]
0334ff93aa96: Layer already exists 
df038583b0cf: Layer already exists 
1429a40caa03: Layer already exists 
2b10df7c36e8: Layer already exists 
3a05b0c16c31: Layer already exists 
11d19a761ef7: Layer already exists 
01534b568332: Layer already exists 
267a6a0302bf: Layer already exists 
b2d5eeeaba3a: Layer already exists 
latest: digest: sha256:bb340553ac39643f6828bfd5d018522036c982015c477f033cde5e59ec4b1109 size: 2200
# echo $?
0
#



コマンド実行後、「0」が表示された場合、「作成したDockerのコンテナイメージをDockerHubに公開(アップロード)できた」と判断できます。

また、Webブラウザ経由でDockerHubにアクセスすることでも「作成したDockerのコンテナイメージをDockerHubに公開(アップロード)できた」ことを確認できます。
DockerHubに公開したコンテナイメージの一覧
 



以上で、「作成したDockerのコンテナイメージをDockerHubへ公開(アップロード)」は完了です。
 

DockerHubに公開(アップロード)されたコンテナイメージをダウンロード

「DockerHubに公開(アップロード)されたコンテナイメージをダウンロード」に関してご説明します。
 

docker pull コマンドを使います。docker pull とは、DockerHubに公開(アップロード)されたコンテナイメージをダウンロードできるコマンドです。



docker pull コマンドを実行することで、DockerHubに公開(アップロード)されたコンテナイメージをダウンロードできます。コマンド中の「適宜変更」と書いてある部分は、自分用に書き換えてください。

# docker pull herokakedashi/fastapi #適宜変更(アカウント名/ダウンロードしたいイメージ名の形式)
Using default tag: latest
latest: Pulling from herokakedashi/fastapi
Digest: sha256:bb340553ac39643f6828bfd5d018522036c982015c477f033cde5e59ec4b1109
Status: Image is up to date for herokakedashi/fastapi:latest
docker.io/herokakedashi/fastapi:latest
# echo $?
0
# 



コマンド実行後、「0」が表示された場合、「DockerHubに公開(アップロード)されたコンテナイメージをダウンロードできた」と判断できます。
 

以上で、「DockerHubに公開(アップロード)されたコンテナイメージをダウンロード」は完了です。
 

DockerHubに公開(アップロード)したコンテナイメージを削除

「DockerHubに公開(アップロード)したコンテナイメージを削除」に関してご説明します。
 

Webブラウザ経由でDockerHubに公開(アップロード)したコンテナイメージを削除できます。



Webブラウザを起動し、DockerHubにログインしましょう。
DockerHubの公式ページ
 

ログイン後、削除したいコンテナイメージをクリックしてください。
 



クリック後、「Settings」(下図の赤枠)をクリックします。
 



クリック後、「Delete repository」(下図の赤枠)をクリックしてください。
 



クリック後、テキストボックス(下図の赤枠)にリポジトリ名を入力し、「Delete」(下図の青枠)をクリックしてください。
 



上記の流れで、DockerHubに公開(アップロード)したコンテナイメージを削除できます。
 

以上で、「DockerHubに公開(アップロード)したコンテナイメージを削除」は完了です。
 

DockerHubの基本的な使い方(公開→ダウンロード→削除)は、以上となります。

 
 

DockerHub利用時の注意点とよく聞く質問


DockerHubにまつわる注意点やよく聞く質問事項に関してご紹介します。
 

★ご紹介事項★
・DockerHubの有料化が話題になったが個人利用は無料なのか?
・DockerHubとGitHubの違いは?



以降で上記の各項目に関して解説します。
 

DockerHubの有料化が話題になったが個人利用は無料なのか?



2021年9月1日にTwitterで、上記のような「サブスクリプションの形態を変更する」旨のアナウンスがありました。

上記のサブスクリプションの変更によるDockerHubへの影響はないです。個人利用してたら、引き続きDockerHubを無料で使えます。

>> DockerHubの料金(Person部分が個人利用に関する料金形態です)


 

DockerHubとGitHubの違いは?

DockerHubと似たウェブサービスとして、GitHubがあります。
GitHubとは、「プログラム」や「ドキュメント」といった自分が作成したものをWeb上で管理できるサービスです。さらに詳しく知りたい方は、以下の記事がオススメです。

>> 【要点解説】GitHubとはを解消!初心者向けに4ステップで解説
 

DockerHubも作成したプログラムを管理できるサービスです。

DockerHubとGitHubには様々な違いがありますが、大雑把に言うと「管理対象の状態」が異なります。

GitHubでは、作成途中や作成し終えたプログラムを管理対象にできます。
一方、DockerHubでは、作成し終えたプログラムを起動できる状態にしたものを管理対象にします。
 


 

【まとめ】DockerHubの使い方【イメージ公開→ダウンロード→削除を解説】


今回の記事を通して、「DockerHubの使い方【イメージ公開→ダウンロード→削除を解説】」をご紹介することで、以下の悩みを解消しました。
 

★悩み★
・基本的なDockerHubの使い方を知りたいな。
・Dockerで作成したコンテナイメージをDockerHubに公開したいな。
・DockerHubに公開されたコンテナイメージをダウンロードしたいな。
・DockerHubに公開(アップロード)したコンテナイメージを削除したいな。



DockerHubにコンテナイメージを公開(アップロード)する手順?」や「DockerHubに公開したコンテナイメージを削除する手順は?」で悩んでいるあなたにこの記事が少しでも役に立てれば幸いです。

コメント