演習 - マイクロサービス イメージを Docker Hub にプッシュする

完了

Kubernetes を使用してコンテナー イメージを作成するには、それを取得する場所が必要です。 Docker Hub は、Docker イメージをアップロードするための中心的な場所です。 Kubernetes を含む多数の製品では、Docker Hub のイメージに基づいてコンテナーを作成できます。

この演習は、 Docker.NET SDK がプレインストールされている GitHub Codespace で完了します。 独自の開発環境でこれらの手法を使用する場合は、これらの前提条件がインストールされていることを確認してください。

開発環境を開く

この演習をホストする GitHub codespace を使用するか、Visual Studio Code 内にてローカルでこの演習を行うかを選択することができます。

コードスペースを使用するには、この Codespace 作成リンクを使用して、事前構成済みの GitHub Codespace を作成します

GitHub で codespace が作成され構成されるまで、このプロセスには数分かかります。 完了すると、このモジュールの残りの部分で使用されるコードは /dotnet-kubernetes ディレクトリにあります。

Visual Studio Code を使用するには、https://github.com/MicrosoftDocs/mslearn-dotnet-cloudnative リポジトリをローカル コンピューターに複製します。 次に、以下を実行します。

  1. Visual Studio Code で Dev Container を実行するための システム要件 をインストールします。
  2. Docker が動作していることを確認します。
  3. 新しい Visual Studio Code ウィンドウで、クローンされたリポジトリのフォルダーを開きます
  4. Ctrl++キーを押してコマンド パレットを開きます。
  5. 検索: >Dev Containers:コンテナーでリビルドして再度開く
  6. ドロップダウンから eShopLite - dotnet-kubernetes を選択します。 Visual Studio Code により、ローカルに開発コンテナーが作成されます。

codespace にコンテナーを作成して Docker イメージを確認する

Contoso Shop プロジェクトには 2 つのコンテナーがあります。 Docker Hub にイメージをプッシュする前に、それらを使用して codespace にコンテナーを作成しましょう。 コンテナーが作成され、実行された後、Contoso 社の Web サイトを閲覧し、マイクロサービスが問題なく動作していることを確認できるようになります。

codespace で Docker コンテナーを作成して実行するには、これらの手順に従います。

  1. [ターミナル] タブに切り替え、次のコマンドを実行してコード ルートに移動します。

    cd dotnet-kubernetes
    
  2. 次のコマンドを実行して、コンテナーを構築します。

    dotnet publish /p:PublishProfile=DefaultContainer
    

    コンテナーの構築にはしばらく時間がかかる場合があります。

  3. 次のコマンドを実行してアプリを実行し、コンテナーをアタッチします。

    docker compose up
    
  4. フロントエンド サービスをテストするには、[ ポート ] タブに切り替え、 フロントエンド ポートのローカル アドレスの右側にある地球アイコンを選択します。 ブラウザーにホームページが表示されます。

  5. [ 製品] を選択します。 カタログには Contoso の商品が示されます。

  6. Web サイトを閉じ、[ターミナル] タブに戻り、 + キーを押します。Docker はコンテナーを停止します。

Docker Hub にサインインする

イメージを Docker Hub にアップロードする次のステップは、Docker Hub にサインインすることです。 コマンド プロンプトから、次のコマンドを入力します。

docker login

重要

ご自分の Docker アカウントを作成したときと同じユーザー名とパスワードを使用します。 必要に応じて、 Docker Hub Web サイト にアクセスしてパスワードをリセットできます。

イメージを Docker Hub にアップロードする

  1. 次のコードを入力して、ご自分の Docker ユーザー名で作成した Docker イメージのタグを変更するか、名前を変更します。

    docker tag store [YOUR DOCKER USER NAME]/storeimage
    docker tag products [YOUR DOCKER USER NAME]/productservice
    
  2. そして最後に、Docker Hub に Docker イメージをアップロード (プッシュ) します。

    docker push [YOUR DOCKER USER NAME]/storeimage
    docker push [YOUR DOCKER USER NAME]/productservice
    

    認証エラーが発生した場合は、docker logout を実行してから docker login を実行して再認証できます。

この演習では、Dockerfile と Docker Compose を使用して 2 つの Docker イメージとコンテナーを作成し、それらのイメージを Docker Hub にプッシュしました。

これで、Kubernetes を使用して Contoso のマイクロサービスのデプロイを管理する準備が整いました。