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

Azure コンテナー レジストリは、オープンソースの Docker Registry 2.0 に基づいた、管理された Docker レジストリ サービスです。Azure Container Registry is a managed 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 のコンテナー レジストリを使用し、Docker コミュニティの専門知識を活用します。Use container registries in Azure with your existing container development and deployment pipelines, and draw on the body of Docker community expertise.

Docker とコンテナーに関する背景については、Docker のユーザー ガイドを参照してください。For background about Docker and containers, see the Docker user guide.

ユース ケース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. たとえば、Visual Studio Team ServicesJenkins などの継続的な統合とデプロイ ツールからコンテナー レジストリを対象にすることができます。For example, target a container registry from a continuous integration and deployment tool such as Visual Studio Team Services or Jenkins.

主要な概念Key concepts

  • レジストリ - Azure サブスクリプションに 1 つ以上のコンテナー レジストリを作成できます。Registry - 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 support webhook integration, repository 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. レジストリの完全修飾名は myregistry.azurecr.io という形式になります。A fully qualified registry name has the form myregistry.azurecr.io.

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

  • リポジトリ - レジストリには、1 つ以上のリポジトリ (コンテナー イメージのグループ) が含まれています。Repository - A registry contains one or more repositories, which are groups of container images. Azure Container Registry では、複数レベルのリポジトリ名前空間をサポートしています。Azure Container Registry supports multilevel repository namespaces. 複数レベルの名前空間により、特定のアプリまたはアプリのコレクションに関連するイメージのコレクションを特定の開発チームや運用チーム別にグループ化できます。With multilevel namespaces, you can group collections of images related to a specific app, or a collection of apps to specific development or operational teams. For example:For example:

    • myregistry.azurecr.io/aspnetcore:1.0.1 は、会社全体のイメージを表しますmyregistry.azurecr.io/aspnetcore:1.0.1 represents a corporate-wide image
    • myregistry.azurecr.io/warrantydept/dotnet-build は、保証部門全体で共有される、.NET アプリを構築するために使用するイメージを表しますmyregistry.azurecr.io/warrantydept/dotnet-build represents an image used to build .NET apps, shared across the warranty department
    • myregistry.azurecr.io/warrantydept/customersubmissions/web は、保証部門が所有する、customer submissions アプリでグループ化された Web イメージを表しますmyregistry.azurecr.io/warrantydept/customersubmissions/web represents a web image, grouped in the customer submissions app, owned by the warranty department
  • イメージ - リポジトリに格納されます。各イメージは、Docker コンテナーの読み取り専用のスナップショットです。Image - Stored in a repository, each image is a read-only snapshot of a Docker 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.

  • コンテナー - コンテナーでは、ソフトウェア アプリケーションと、コード、ランタイム、システム ツール、ライブラリを含む完全なファイル システム内にラップされた依存関係を定義します。Container - A container defines a software application and its dependencies wrapped in a complete filesystem including code, runtime, system tools, and libraries. コンテナー レジストリからプルした Windows または Linux イメージに基づいて Docker コンテナーを実行します。Run Docker containers based on Windows or Linux images that you pull from a container registry. 1 台のコンピューターで実行されているすべてのコンテナーでは、オペレーティング システムのカーネルを共有します。Containers running on a single machine share the operating system kernel. Docker コンテナーは、主要なすべての Linux ディストリビューション、macOS、および Windows に完全に移植できます。Docker containers are fully portable to all major Linux distros, macOS, and Windows.

次のステップNext steps