Visual Studio Code でのコンテナー

Container Tools 拡張機能を使用すると、Visual Studio Code でコンテナー化されたアプリケーションを簡単にビルド、管理、デプロイできます。

このページでは、Container Tools 拡張機能の機能の概要を説明します。興味のあるトピックについては、サイドメニューを使用して詳細を確認してください。コンテナー開発を始めたばかりの場合は、まず Docker チュートリアルを試して、Docker の重要な概念を理解してください。

インストール

マシンに Docker をインストールし、システムパスに追加します。

Linux では、VS Code を実行する非 root ユーザーアカウントに対して Docker CLI を有効にする必要もあります。

拡張機能をインストールするには、拡張機能ビュー (⇧⌘X (Windows, Linux Ctrl+Shift+X)) を開き、container tools を検索して結果を絞り込み、Microsoft が提供する Container Tools 拡張機能を選択します。

Select Container Tools extension

Docker ファイルの編集

Dockerfile および docker-compose.yml ファイルを編集する際に ⌃Space (Windows, Linux Ctrl+Space) をクリックすることで、一般的なコマンドの補完や構文ヘルプを備えた IntelliSense を利用できます。

IntelliSense for Dockerfiles

さらに、問題パネル (⇧⌘M (Windows, Linux Ctrl+Shift+M)) を使用して、Dockerfile および docker-compose.yml ファイルの一般的なエラーを表示できます。

Docker ファイルの生成

コマンドパレット (⇧⌘P (Windows, Linux Ctrl+Shift+P)) を開き、Containers: Add Docker Files to Workspace コマンドを使用して、ワークスペースに Docker ファイルを追加できます。このコマンドは Dockerfile.dockerignore ファイルを生成し、ワークスペースに追加します。また、Docker Compose ファイルを追加するかどうかも尋ねられますが、これはオプションです。

この拡張機能は、最も一般的な開発言語(C#、Node.js、Python、Ruby、Go、Java)の Docker ファイルをスキャフォールディング(雛形作成)でき、生成される Docker ファイルをそれに応じてカスタマイズします。これらのファイルが作成される際、Node.js、Python、.NET (C#) のデバッグサポートを提供するために必要なアーティファクトも作成されます。

コンテナー エクスプローラー

Container Tools 拡張機能は、VS Code に「コンテナー エクスプローラー」ビューを追加します。コンテナー エクスプローラーを使用すると、コンテナー、イメージ、ボリューム、ネットワーク、コンテナー レジストリといったコンテナー資産を調査および管理できます。Microsoft アカウントでサインインしており、Azure サブスクリプションにアクセスできる場合は、Azure コンテナー レジストリも参照できます。

右クリックメニューから、各資産タイプで一般的に使用されるコマンドにアクセスできます。

Container Explorer context menu

マウスで上下にドラッグしてコンテナー エクスプローラーのペインを並べ替えることができ、コンテキストメニューを使用してそれらを非表示または表示にできます。

Customize Container Explorer

コンテナー コマンド

最も一般的なコンテナー関連コマンドの多くは、コマンドパレットに直接組み込まれています。

Container commands

イメージネットワークボリュームイメージ レジストリ、および Docker Compose を管理するコマンドを実行できます。さらに、Containers: Prune System コマンドを実行すると、停止しているコンテナー、ぶら下がり状態(dangling)のイメージ、および使用されていないネットワークとボリュームが削除されます。

Docker Compose

Docker Compose を使用すると、Docker を使ってマルチコンテナー アプリケーションを定義および実行できます。Container Tools 拡張機能内の Compose 言語サービスは、docker-compose.yml ファイルを作成する際に IntelliSense とタブ補完機能を提供します。⌃Space (Windows, Linux Ctrl+Space) を押すと、有効な Compose ディレクティブのリストが表示されます。

Docker Compose IntelliSense

また、Docker Compose YAML 属性にマウスを合わせるとツールチップが表示されます。

Docker Compose Tooltips

Compose Up を使用するとすべてのサービスを一度に実行できますが、新機能の Compose Up - Select Services を使用すると、実行したいサービスの任意の組み合わせを選択できます。

Docker Compose Up - Select Subset

Compose Up コマンドが完了したら、コンテナー エクスプローラーに移動して、サービスを「Compose グループ」として表示します。これにより、各サービスをグループとして開始、停止、およびログの表示が可能になります。

Docker Compose Groups

イメージ レジストリの使用

Azure Container RegistryDocker HubGitHub などから、イメージの表示、プッシュ、プル、削除を行うことができます。

Azure Container Registry content

Azure Container Registry 内のイメージは、VS Code から直接 Azure App Service または Azure Container Apps にデプロイできます。開始方法については、Azure へのデプロイを参照してください。レジストリへの認証およびレジストリを操作する方法の詳細については、コンテナー レジストリの使用を参照してください。

コンテナー内で実行されているサービスのデバッグ

コンテナー内で実行されている .NET (C#) および Node.js を使用して構築されたサービスをデバッグできます。この拡張機能は、デバッガー下でサービスを起動したり、実行中のサービスインスタンスにデバッガーをアタッチしたりするのに役立つカスタムタスクを提供します。詳細については、コンテナー化されたアプリのデバッグおよびContainer Tools 拡張機能のカスタマイズを参照してください。

Azure CLI の統合

Container Images: Run Azure CLI コマンドを使用すると、スタンドアロンの Linux ベースのコンテナーで Azure CLI (コマンドライン インターフェイス) を起動できます。これにより、分離された環境で Azure CLI コマンドセット全体にアクセスできます。利用可能なコマンドの詳細については、Azure CLI の開始を参照してください。

次のステップ

詳細については、以下をお読みください。

© . This site is unofficial and not affiliated with Microsoft.