チュートリアル - Azure Container Registry (ACR) を作成してイメージをビルドする

Azure Container Registry (ACR) は、コンテナー イメージ用のプライベート レジストリです。 プライベート コンテナー レジストリを使用すると、アプリケーションとカスタム コードを安全にビルドおよびデプロイすることができます。

7 つのパートのうちの 2 番目のこのチュートリアルでは、ACR インスタンスをデプロイして、それにコンテナー イメージをプッシュします。 以下の方法について説明します。

  • ACR インスタンスを作成します。
  • ACR タスクを使用して、コンテナー イメージをビルドして ACR にプッシュします。
  • レジストリ内のイメージを表示します。

開始する前に

前のチュートリアルでは、Docker を使用して、単純な Azure Store Front アプリケーション用のコンテナー イメージを作成しました。 Azure Store Front アプリ イメージを作成していない場合は、「チュートリアル 1 - AKS 用にアプリケーションを準備する」に戻ります。

このチュートリアルには、Azure CLI バージョン 2.0.53 以降が必要です。 バージョンを確認するには、az --version を実行します。 インストールまたはアップグレードする必要がある場合は、Azure CLI のインストールに関するページを参照してください。

Azure Container Registry を作成する

ACR インスタンスを作成する前に、リソース グループが必要です。 Azure リソース グループは、Azure リソースのデプロイと管理に使用する論理コンテナーです。

重要

このチュートリアルでは、リソース グループ名のプレースホルダーとして myResourceGroup を使用します。 別の名前を使用する場合は、myResourceGroup を独自のリソース グループ名に置き換えてください。

  1. az group create コマンドを使用して、リソース グループを作成します。

    az group create --name myResourceGroup --location eastus
    
  2. az acr create コマンドを使用して ACR インスタンスを作成し、独自の一意のレジストリ名を指定します。 レジストリの名前は Azure 内で一意にする必要があり、英数字で 5 ~ 50 文字にする必要があります。 このチュートリアルの残りの部分では、コンテナー レジストリ名のプレースホルダーとして環境変数 $ACRNAME を使用します。 この環境変数は、今後のコマンドで使用する一意の ACR 名に設定できます。 Basic SKU は、ストレージとスループットのバランスが取れた、開発目的のコスト最適化されたエントリ ポイントです。

    az acr create --resource-group myResourceGroup --name $ACRNAME --sku Basic
    

コンテナー イメージをビルドしてレジストリにプッシュする

  • Azure CLI az acr build コマンドを使用して、イメージをビルドして ACR にプッシュします。

    Note

    この手順では、このタスクを実行する同等の Azure PowerShell コマンドレットはありません。

    次の例では、rabbitmq イメージはビルドしません。 このイメージは Docker Hub パブリック リポジトリから入手できるため、ビルドしたり、ACR インスタンスにプッシュしたりする必要はありません。

    az acr build --registry $ACRNAME --image aks-store-demo/product-service:latest ./src/product-service/
    az acr build --registry $ACRNAME --image aks-store-demo/order-service:latest ./src/order-service/
    az acr build --registry $ACRNAME --image aks-store-demo/store-front:latest ./src/store-front/
    

レジストリ内のイメージの一覧表示

  • az acr repository list コマンドを使用して、ACR インスタンス内のイメージを表示します。

    az acr repository list --name $ACRNAME --output table
    

    次の出力例は、レジストリ内の使用可能なイメージを一覧表示します。

    Result
    ----------------
    aks-store-demo/product-service
    aks-store-demo/order-service
    aks-store-demo/store-front
    

次のステップ

このチュートリアルでは、ACR を作成し、AKS クラスターで使用するためにイメージをそこにプッシュしました。 以下の方法を学習しました。

  • ACR インスタンスを作成します。
  • ACR タスクを使用して、コンテナー イメージをビルドして ACR にプッシュします。
  • レジストリ内のイメージを表示します。

次のチュートリアルでは、Azure に Kubernetes クラスターをデプロイする方法について学習します。