【Docker Hub】Docker イメージのプッシュ手順【WSL 2 + Ubuntu】

Windows

Docker Hub へのアカウント登録と オリジナル Docker イメージのプッシュ/プル手順

前回の記事で、 Dockerfile を使い Docker イメージを作成する方法を解説いたしました。



その中では、Dockerfile を使うと1つのコマンドを実行することで、簡単にオリジナル Docker イメージが作成できることを解説しています。

しかし、Dockerfile で Docker イメージを作成しても Docker イメージ内のデータは、また1から登録する必要があります。
それでは、あまりも非効率なので Docker には作成したオリジナル Docker イメージを保存する機能があります。

今回は Dockerfile を使いオリジナル Docker イメージを作成し、さらにその作成した Docker イメージを保存するため Docker Hub への Docker イメージのプッシュする手順とプッシュした Docker イメージを使用する手順を解説いたします。
また、Docker Hub を使用するために必要な Docker Hub へのアカウント登録手順も解説いたします。

なお、使用する環境は WSL 2 + Docker Desktop for Windows となりますが、環境構築手順に関しては割愛いたします。WSL 2 + Docker Desktop for Windows の環境構築手順をご覧になりたい方はこちらをクリックしてください。
また、WSL 2 の環境構築手順に関しても割愛いたします。WSL 2 の環境構築手順をご覧になりたい方はこちらをクリックしてください。

また、WSL 2 や Desktop for Windows などの環境に関しては、 以下の記事で解説していますので、よろしければご覧ください。


スポンサーリンク

スポンサーリンク

スポンサーリンク

アカウント登録

まず、Docker Hub を使用するため、Docker Hub へのアカウント登録手順を解説いたします。

Docker Hub のアカウントが未登録の場合、Docker イメージをプルすることはできますがプッシュができません。
したがって、Docker Hub を使用する前に Docker Hub のアカウント登録をおこないます。


Docker Hub の公式サイトに接続し、[Docker ID]、[Email]、[Password] を、また、製品情報などの通知が必要な場合、Send me occasional product updates and announcements.] にチェックします。

画像クリックで拡大画像を表示します

すべての項目の入力が完了したら、reCAPTCHA の [私はロボットではありません] にチェックし、[Sign Up] をクリックします。



次に、[Choose a Plan] にて、プランを選択します。

画像クリックで拡大画像を表示します

筆者の場合、Docker Hub は、個人的な検証が目的ですので、Personal Plan を利用します。ですので、[Continue with Free] をクリックしています。



次に、メールアドレスの確認をおこないます。

画像クリックで拡大画像を表示します



Docker から登録したアドレスにメールが届きます。

画像クリックで拡大画像を表示します

メール本文内の、[Add email address] をクリックします。



以上で、Docker Hub のアカウント登録は完了ですが、必要に応じてプロファイルも更新します。

画像クリックで拡大画像を表示します
画像クリックで拡大画像を表示します



リポジトリの作成時にも設定しますが、 [Default Repository Privacy] を設定することができます。

画像クリックで拡大画像を表示します

なお、docker docs でも説明されている通り、Personal Plan では、プライベートリポジトリは1つだけ生成することができます。

したがって、リポジトリの設定は [Public] のままで OK です。



Docker イメージのプッシュ

Docker Hub へのアカウント登録が完了したら、続いては、オリジナル Docker イメージをプッシュする手順を解説いたします。

なお、リポジトリが作成されていなくても、Docker イメージのプッシュ時に自動的にリポジトリが作成されますが、今回は、あらかじめリポジトリを準備し、そのリポジトリに Docker イメージをプッシュする手順を解説いたします。


リポジトリの作成

まず、Docker Hub からリポジトリを作成します。


Docker Hub の Repositories に接続し、[Create Repository] をクリックします。
また、Create Repository にて、[Name]、[Description] を、また、[Visibility] に、[Public]、もしくは [Private] を選択し、[Create] をクリックします。

画像クリックで拡大画像を表示します
画像クリックで拡大画像を表示します



リポジトリが作成されました。
なお、リポジトリを削除する場合は、[Settings] より削除することができます。

画像クリックで拡大画像を表示します
画像クリックで拡大画像を表示します



Docker イメージの作成

続いて、Dockerfile を使って、Docker イメージを作成します。


Dcokerfile を準備し、Docker イメージを作成するため、以下のコマンドを実行します。

docker build -t tamao-test-image .
画像クリックで拡大画像を表示します
画像クリックで拡大画像を表示します




次に、Docker イメージを確認するため、以下のコマンドを実行します。

docker images
画像クリックで拡大画像を表示します

「tamao-test-image」という名前のイメージが作成されました。



Docker イメージのプッシュ

続いて、Docker Hub へ Docker イメージをプッシュします。


Docker Hub へログインするため、以下のコマンドを実行します。

docker login
画像クリックで拡大画像を表示します

[Username]、[Password] に、Docker ID とそのパスワードを入力します。



次に、Docker イメージをプッシュする準備として、Docker イメージに名前空間を設定します。そのため、Docker イメージに名前空間を設定するため、以下のコマンドを実行します。

docker tag c48aa09c3eaf tamao/tamao-test-repo:latest
画像クリックで拡大画像を表示します

Docker イメージの作成」で作成したリポジトリ名のままだと、Docker Hub のアカウントと紐付いていないため、Docker イメージをプッシュすることはできません。



次に、Docker イメージをプッシュするため、以下のコマンドを実行します。

docker push tamao/tamao-test-repo:latest
画像クリックで拡大画像を表示します

Docker イメージのプッシュが成功しました。



Docker イメージのプッシュが成功すると、Docker Hub のリポジトリに Docker イメージ追加されています。

画像クリックで拡大画像を表示します
画像クリックで拡大画像を表示します



オリジナル Docker イメージの使用

Docker イメージのプッシュが完了したら、続いては、プッシュした Docker イメージの使用方法を手順を解説いたします。


オリジナル Docker イメージの作成

オリジナル Docker イメージを使用するため、Dockerfile を変更します。また、Docker イメージを作成するため、以下のコマンドを実行します。

docker build -t tamao-customize-image .
画像クリックで拡大画像を表示します
画像クリックで拡大画像を表示します



次に、Docker イメージを確認するため、以下のコマンドを実行します。

docker images
画像クリックで拡大画像を表示します

「tamao-customize-image」という名前のイメージが作成されました。



コンテナの作成

続いて、コンテナを作成し Web サイトの確認をおこないます。


コンテナを作成するため、以下のコマンドを実行します。

docker run -it -d -p 8080:80 --name tamao-customize-container tamao-customize-image
画像クリックで拡大画像を表示します

Docker イメージには、「オリジナル Docker イメージの作成」で作成した、Docker イメージ「tamao-customize-image」を指定します。



次に、コンテナを確認するため、以下のコマンドを実行します。

docker ps
画像クリックで拡大画像を表示します

「tamao-customize-container」という名前のコンテナが作成されました。



「localhost:8080」にアクセスするします。

画像クリックで拡大画像を表示します

Nginx のデフォルトページが正常に表示されました。Web サイトとして機能しています。



まとめ

以上が、Docker Hub へのアカウント登録と Docker イメージのプッシュ、プッシュした Docker イメージの使用方法となります。

いかがでしたでしょうか?

Docker Hub に Web サイトなどオリジナルの環境をまるごとプッシュすることができますの便利な機能だと思います。
例えば、別環境(別の場所、別のパソコンなど)で Web サイト などの構築する際に、Docker イメージをプルするだけの作業ですので、環境構築の費やす作業量を大幅に省くことができます。これって、すごいメリットですね。
実際、同じ手順で構築したつもりでも、作業ミスでハマった経験がある方も多いと思います。

環境構築って手間ですよねー(汗)

著者がアプリケーション開発に携わっていた頃(2012~2013年ごろまで)の話なのですが、アプリケーションの実行環境を構築するために、開発ベンダーにまで足を運んだ経験もあります。
当時、コンテナ型仮想化が今ぐらい発展していれば、コンテナ型仮想化を採用したのですが・・・今ならコンテナ型仮想化を提案すると思います。

はじめは、コンテナ型仮想化も覚えることも多くなかなか慣れませんでしたが Docker に触れるにつれ、とても興味深く面白い技術だと感じました。




本稿をご覧になっていただいている読者様の中で、もし、インフラエンジニアを目指している方、もしくはインフラエンジニアに興味がある方がいらっしゃれば、スクールで学ぶことも「あり 」です。
いくつかインフラ系の技術が学べるスクールをピックアップいたしましたので、ご検討の一助となれば幸いです。

 スクール  受講料  受講期間  ポイント
ササエル 19,800円 14レッスン 初級のインフラエンジニアに特化したオンラインスクールです。インフラエンジニアを目指すなら、まずはここから!?
98,000円 15レッスン 初級の次は中級も学べます。
TechAcademy [テックアカデミー] 174,900円(※1) 4週間プラン コースにより、若干、インフラ要素あり。また、学べる言語が細分化されているので、目的に合ったコースが選べます。
【CCNAコース ウズウズカレッジ】 33,000円/月 1ヶ月~ 応募資格を満たしていれば、無料特待プランで受講料が無料!?
初心者OK!KENスクール 187,000円(※2) 50時間 ネットワークコースのLinuxレベル1取得講座。Webサーバーの構築まで学べます。
119,900円(※2) 30時間 ネットワークコースのWindows Server構築講座。クライアントOSの管理操作を学べます。
※1.フロントエンドコースの料金です。学生の場合、料金は163,900円と割引があります。
※2.スクール提携企業特別割引の場合、受講料が10~15% OFF、入会金無料。学生割引特典の場合、全講座料金 20% OFF。





最後までお読みいただきありがとうございました。


では。


スポンサーリンク

スポンサーリンク

Windows
スポンサーリンク
たまおをフォローする
スポンサーリンク
たまーのテクノロジー
タイトルとURLをコピーしました