VS Codeのエージェントモードを拡張するには、を試してください!

コンテナーレジストリの使用

コンテナーレジストリは、さまざまなタグ付きバージョンで利用可能な名前付きコンテナーイメージを保持するストレージおよびコンテンツ配信システムです。

ユーザーは以下のソースからコンテナーレジストリに接続できます

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

コンテナーイメージをデプロイする前に、そのイメージをコンテナーレジストリにアップロードする必要があります。イメージは、Docker HubAzure Container Registry (ACR)、またはその他のレジストリにアップロードできます。Docker Hub、Azure Container Registries、またはその他のレジストリのいずれにプッシュする場合でも、同じ手順に従ってイメージをプッシュできます。Azure Container Registryをまだお持ちでない場合は、プッシュ手順中に作成できます。

  1. コンテナーエクスプローラーを開き、レジストリビューの下にあるレジストリに接続...アイコンを選択し、プロンプトに従います。プロバイダー (例: Azure または Docker Hub) を選択し、レジストリに接続するための資格情報を入力します。プロンプトが表示されたら、Azure Resources 拡張機能をインストールします。

    Connect to Registry

  2. これでレジストリがレジストリの下に表示されます。

    Registries

  3. 必要に応じて、イメージにタグを付けます。イメージをレジストリにアップロードするには、docker push が適切なレジストリにアップロードできるように、イメージにレジストリ名でタグを付ける必要があります。プッシュしようとしたときにイメージにタグが付けられていない場合、VS Code はそのイメージをどのレジストリに関連付けるか尋ねます。

    • 以前にビルドしたイメージは、コンテナーエクスプローラーのイメージビューの下に表示されます。右クリックしてタグ...を選択します。

      Tag image

    • 新しい名前 <あなたのレジストリ名またはユーザー名>/<イメージ名>:<タグ> を指定し、タグ付けアクションを完了します。たとえば、ACR の新しいイメージ名は mainacr.azurecr.io/webapp6:latest となり、Docker Hub の場合は myusername/webapp6:latest となります。

  4. イメージは、イメージタグが指すレジストリの下にあるコンテナーエクスプローラーのイメージビューに表示されます。このイメージを選択してプッシュを選択します。イメージにまだタグが付けられていない場合は、プッシュ先のレジストリを選択するか、新しいレジストリを作成するように求められ、選択に基づいてイメージにタグが付けられます。

    Push image

  5. プッシュコマンドが完了したら、イメージがプッシュされたレジストリノードを更新すると、アップロードされたイメージが表示されます。

    Refresh registry

Docker Hub

これはDocker Hubに接続し、指定されたアカウントの下にあるすべてのリポジトリとイメージをリスト表示します。このオプションを選択すると、Docker Hubの資格情報の入力が求められます。

Docker Hub

Docker Hubレジストリの各リポジトリに対して実行できるアクションは以下のとおりです。

  • リポジトリをプル: 特定のリポジトリ内のすべてのイメージをローカルにコピーします
  • ブラウザで開く: ブラウザを開き、Docker Hub上の指定されたリポジトリに移動します
  • 更新: リポジトリを更新して変更を反映します

リポジトリ内のタグ付けされた各イメージに対して実行できるアクションは以下のとおりです。

  • イメージをプル: イメージの最新バージョンをローカルにコピーします
  • 完全なタグをコピー: 完全なタグをクリップボードにコピーします
  • Azure App Service にイメージをデプロイ: イメージを Azure App Service にデプロイします。イメージを Azure にデプロイのページを参照してください。
  • Azure Container Apps にイメージをデプロイ: イメージを Azure Container Apps にデプロイします。イメージを Azure にデプロイのページを参照してください。
  • ブラウザで開く: ブラウザを開き、Docker Hub上の指定されたイメージに移動します

Azure Container Registry

このオプションでは、Azure アカウントに接続し、すべての異なるサブスクリプションとレジストリを表示するために、Azure Resources 拡張機能が必要です。認証されると、Azure ノードにサブスクリプションと、それぞれのレジストリが表示されます。

Azure Container Registry

各レジストリについて、ユーザーはコンテキストメニューを使用して実行できるさまざまなアクションがあります。

Azure registry context menu

  • レジストリを削除: レジストリを完全に削除します
  • ポータルで開く: ブラウザを開き、Azure Portalでレジストリに移動します
  • プロパティを表示: レジストリのプロパティをJSON形式で開きます
  • 更新: レジストリを更新して変更を反映します

特定のレジストリ内の各リポジトリに対して実行できるアクションは以下のとおりです。

Azure repository context menu

  • リポジトリをプル: 特定のリポジトリ内のすべてのイメージをローカルにコピーします
  • リポジトリを削除: リポジトリを完全に削除します
  • 更新: リポジトリを更新して変更を反映します

リポジトリ内のタグ付けされた各イメージに対して実行できるアクションは以下のとおりです。

Azure image context menu

  • イメージをプル: イメージの最新バージョンをローカルにコピーします
  • 完全なタグをコピー: 完全なタグをクリップボードにコピーします
  • イメージダイジェストをコピー: イメージダイジェスト (Dockerが使用するSHA256ハッシュ識別子) をクリップボードにコピーします。イメージダイジェストの詳細については、Docker Docsを参照してください。
  • イメージマニフェストを検査: イメージのレジストリマニフェストを検査します。これは、イメージがローカルにプルされたときに検査することとは異なります。
  • Azure App Service にイメージをデプロイ: イメージを Azure App Service にデプロイします。イメージを Azure にデプロイのページを参照してください。
  • Azure Container Apps にイメージをデプロイ: イメージを Azure Container Apps にデプロイします。イメージを Azure にデプロイのページを参照してください。
  • イメージのタグを解除: イメージのタグを解除します
  • イメージを削除: イメージを完全に削除します

GitHub

これは、あなたのGitHubアカウントにあるコンテナーレジストリに接続します。このオプションを選択すると、GitHubアカウントの資格情報の入力が求められます。

GitHub

GitHubレジストリ内の各リポジトリに対して実行できるアクションは以下のとおりです。

  • リポジトリをプル: 特定のリポジトリ内のすべてのイメージをローカルにコピーします
  • 更新: リポジトリを更新して変更を反映します

リポジトリ内のタグ付けされた各イメージに対して実行できるアクションは以下のとおりです。

  • イメージをプル: イメージの最新バージョンをローカルにコピーします
  • 完全なタグをコピー: 完全なタグをクリップボードにコピーします
  • イメージダイジェストをコピー: イメージダイジェスト (Dockerが使用するSHA256ハッシュ識別子) をクリップボードにコピーします。イメージダイジェストの詳細については、Docker Docsを参照してください。
  • イメージマニフェストを検査: イメージのレジストリマニフェストを検査します。これは、イメージがローカルにプルされたときに検査することとは異なります。
  • Azure App Service にイメージをデプロイ: イメージを Azure App Service にデプロイします。イメージを Azure にデプロイのページを参照してください。
  • Azure Container Apps にイメージをデプロイ: イメージを Azure Container Apps にデプロイします。イメージを Azure にデプロイのページを参照してください。

次のステップ