Azure のプライベート Docker コンテナー レジストリの概要Introduction to private Docker container registries in Azure

Azure Container Registry は、オープンソースの Docker Registry 2.0 が基になっている管理されたプライベートな Docker レジストリ サービスです。Azure Container Registry is a managed, private Docker registry service based on the open-source Docker Registry 2.0. プライベート Docker コンテナー イメージを保存および管理する Azure コンテナー レジストリを作成および管理します。Create and maintain Azure container registries to store and manage your private Docker container images.

既存のコンテナーの開発およびデプロイ パイプラインで Azure コンテナー レジストリを使うか、Azure Container Registry タスクを使って Azure にコンテナー イメージをビルドします。Use Azure container registries with your existing container development and deployment pipelines, or use Azure Container Registry Tasks to build container images in Azure. 必要に応じてビルドするか、またはソースコードのコミットやベース イメージの更新などのトリガーでビルドを完全に自動化します。Build on demand, or fully automate builds with triggers such as source code commits and base image updates.

Docker とレジストリの概念について詳しくは、「Docker overview (Docker の概要)」および「About registries, repositories, and images (レジストリ、リポジトリ、およびイメージについて)」をご覧ください。For more about Docker and registry concepts, see the Docker overview and About registries, repositories, and images.

ユース ケースUse cases

Azure コンテナー レジストリからさまざまなデプロイ ターゲットにイメージをプルできます。Pull images from an Azure container registry to various deployment targets:

開発者は、コンテナー開発ワークフローの一環としてコンテナー レジストリにプッシュすることもできます。Developers can also push to a container registry as part of a container development workflow. たとえば、Azure PipelinesJenkins などの継続的インテグレーションと継続的配信ツールからコンテナー レジストリを対象にします。For example, target a container registry from a continuous integration and delivery tool such as Azure Pipelines or Jenkins.

ベース イメージが更新されたときに自動的にアプリケーション イメージをリビルドするように ACR タスクを構成するか、チームがコードを Git リポジトリにコミットしたときのイメージ ビルドを自動化します。Configure ACR Tasks to automatically rebuild application images when their base images are updated, or automate image builds when your team commits code to a Git repository. 複数のコンテナー イメージのビルド、テスト、および修正プログラム適用をクラウドで並列で自動的に行うために、マルチステップ タスクを作成します。Create multi-step tasks to automate building, testing, and patching multiple container images in parallel in the cloud.

Azure には、Azure コンテナー レジストリを管理するために、Azure コマンド ライン インターフェイス、Azure portal、API サポートなどのツールが用意されています。Azure provides tooling including Azure Command-Line Interface, Azure portal, and API support to manage your Azure container registries. Azure コンテナー レジストリを操作するには、必要に応じて Visual Studio Code 用の Docker 拡張機能Azure アカウント拡張機能をインストールします。Optionally install the Docker Extension for Visual Studio Code and the Azure Account extension to work with your Azure container registries. Azure コンテナー レジストリとの間でイメージをプルおよびプッシュしたり、ACR タスクを実行したりします。すべて Visual Studio Code 内で実行します。Pull and push images to an Azure container registry, or run ACR Tasks, all within Visual Studio Code.

主要な機能Key features

  • レジストリ SKU - Azure サブスクリプションに 1 つ以上のコンテナー レジストリを作成できます。Registry SKUs - Create one or more container registries in your Azure subscription. レジストリには、Basic、Standard、Premium の 3 つの SKU があり、それぞれ Webhook 統合、Azure Active Directory によるレジストリ認証、および削除機能がサポートされます。Registries are available in three SKUs: Basic, Standard, and Premium, each of which supports webhook integration, registry authentication with Azure Active Directory, and delete functionality. デプロイと同じ Azure の場所にレジストリを作成することで、ネットワーク上の近い場所にローカルで保存されたコンテナー イメージを活用します。Take advantage of local, network-close storage of your container images by creating a registry in the same Azure location as your deployments. 高度なレプリケーションとコンテナー イメージの配布に対応するには、Premium レジストリの geo レプリケーション機能を使用してください。Use the geo-replication feature of Premium registries for advanced replication and container image distribution scenarios.

    コンテナー レジストリへのアクセスを制御するには、Azure ID、Azure Active Directory でサポートされているサービス プリンシパル、または提供された管理者アカウントを使用します。You control access to a container registry using an Azure identity, an Azure Active Directory-backed service principal, or a provided admin account. Azure CLI または標準の docker login コマンドを使用して、レジストリにログインします。Log in to the registry using the Azure CLI or the standard docker login command.

  • サポートされるイメージと成果物 - リポジトリにグループ化されます。各イメージは、Docker 互換コンテナーの読み取り専用のスナップショットです。Supported images and artifacts - Grouped in a repository, each image is a read-only snapshot of a Docker-compatible container. Azure コンテナー レジストリには、Windows と Linux の両方のイメージを含めることができます。Azure container registries can include both Windows and Linux images. すべてのコンテナーのデプロイのイメージ名を制御できます。You control image names for all your container deployments. イメージをリポジトリにプッシュしたり、イメージをリポジトリからプルしたりするには、標準の Docker コマンドを使用します。Use standard Docker commands to push images into a repository, or pull an image from a repository. Azure Container Registry は、Docker コンテナー イメージに加えて、Helm チャートのような関連コンテンツの形式および Open Container Initiative (OCI) のイメージ形式の仕様に基づいて構築されたイメージを格納します。In addition to Docker container images, Azure Container Registry stores related content formats such as Helm charts and images built to the Open Container Initiative (OCI) Image Format Specification.

  • Azure Container Registry タスク - Azure でのイメージのビルド、テスト、プッシュ、デプロイを簡素化するには、Azure Container Registry タスク (ACR タスク) を使います。Azure Container Registry Tasks - Use Azure Container Registry Tasks (ACR Tasks) to streamline building, testing, pushing, and deploying images in Azure. たとえば、ACR タスクを使って、docker build 操作を Azure にオフロードすることで、開発の社内ループをクラウドに拡張します。For example, use ACR Tasks to extend your development inner-loop to the cloud by offloading docker build operations to Azure. ビルド タスクの設定では、コンテナーの OS およびフレームワーク パッチ適用 パイプラインを自動化し、ソース コントロールにコードがコミットされたときに自動的にイメージがビルドされるよう指定できます。Configure build tasks to automate your container OS and framework patching pipeline, and build images automatically when your team commits code to source control.

    マルチステップ タスクでは、クラウドでのコンテナー イメージのビルド、テスト、および修正プログラムの適用のために、ステップベースでタスクの定義と実行を行うことができます。Multi-step tasks provide step-based task definition and execution for building, testing, and patching container images in the cloud. タスクのステップでは、コンテナー イメージのビルド操作とプッシュ操作を個々に定義します。Task steps define individual container image build and push operations. 各ステップで実行環境としてコンテナーを使用するように、1 つまたは複数のコンテナーの実行を定義することもできます。They can also define the execution of one or more containers, with each step using the container as its execution environment.

次の手順Next steps