Visual Studio Code のコンテナー
コンテナー ツール拡張機能を使用すると、Visual Studio Code でコンテナー化されたアプリケーションのビルド、管理、デプロイを簡単に行うことができます。
このページでは、コンテナー ツール拡張機能の概要を説明します。関心のあるトピックについて詳しく知るには、サイドメニューを使用してください。コンテナー開発を始めたばかりの場合は、まず Docker チュートリアルを試して、Docker の主要な概念を理解してください。
インストール
お使いのマシンに Docker をインストールし、システム パスに追加します。
Linux では、VS Code の実行に使用される非 root ユーザー アカウントで Docker CLI を有効にする必要もあります。
拡張機能をインストールするには、拡張機能ビュー (⇧⌘X (Windows、Linux Ctrl+Shift+X)) を開き、container tools
を検索して結果をフィルター処理し、Microsoft が作成したコンテナー ツール拡張機能を選択します。
Docker ファイルの編集
Dockerfile
と docker-compose.yml
ファイルを編集中に ⌃Space (Windows、Linux Ctrl+Space) をクリックすると、IntelliSense を利用でき、一般的なコマンドの補完と構文ヘルプが表示されます。
さらに、問題パネル (⇧⌘M (Windows、Linux Ctrl+Shift+M)) を使用して、Dockerfile
と docker-compose.yml
ファイルの一般的なエラーを表示できます。
Docker ファイルの生成
コマンド パレット (⇧⌘P (Windows、Linux Ctrl+Shift+P)) を開き、Containers: Add Docker Files to Workspace (コンテナー: Docker ファイルをワークスペースに追加) コマンドを使用することで、Docker ファイルをワークスペースに追加できます。このコマンドは Dockerfile
と .dockerignore
ファイルを生成し、ワークスペースに追加します。このコマンドは Docker Compose ファイルも追加するかどうかを尋ねますが、これはオプションです。
この拡張機能は、最も一般的な開発言語 (C#、Node.js、Python、Ruby、Go、Java) の Docker ファイルをスキャフォールディングし、生成された Docker ファイルをそれに応じてカスタマイズできます。これらのファイルが作成されると、Node.js、Python、.NET (C#) のデバッグ サポートを提供するために必要な成果物も作成されます。
コンテナー エクスプローラー
コンテナー ツール拡張機能は、VS Code にコンテナー エクスプローラー ビューを提供します。コンテナー エクスプローラーを使用すると、コンテナー、イメージ、ボリューム、ネットワーク、コンテナー レジストリなどのコンテナー資産を検査および管理できます。Microsoft アカウントにサインインしていて、Azure サブスクリプションへのアクセス権がある場合は、Azure Container Registries も参照できます。
右クリック メニューから、各種類のアセットでよく使用されるコマンドにアクセスできます。
コンテナー エクスプローラーのペインは、マウスで上下にドラッグして再配置したり、コンテキスト メニューを使用して表示/非表示を切り替えたりできます。
コンテナー コマンド
最も一般的なコンテナー関連のコマンドの多くは、コマンド パレットに直接組み込まれています
イメージ、ネットワーク、ボリューム、イメージ レジストリ、および Docker Compose を管理するコマンドを実行できます。さらに、Containers: Prune System (コンテナー: システムの整理) コマンドは、停止したコンテナー、ダングリング イメージ、および未使用のネットワークとボリュームを削除します。
Docker Compose
Docker Compose を使用すると、Docker で複数コンテナーのアプリケーションを定義して実行できます。コンテナー ツール拡張機能の Compose Language Service は、docker-compose.yml
ファイルの作成時に IntelliSense とタブ補完を提供します。⌃Space (Windows、Linux Ctrl+Space) を押して、有効な Compose ディレクティブのリストを表示します。
また、Docker Compose YAML 属性にマウス カーソルを合わせると、ツールチップも表示されます。
Compose Up
を使用するとすべてのサービスを一度に実行できますが、新機能の Compose Up - Select Services
を使用すると、実行したいサービスの任意の組み合わせを選択できます。
Compose Up
コマンドが完了したら、コンテナー エクスプローラーに移動して、サービスを Compose グループとして表示します。これにより、各サービスをグループとして開始、停止、およびログの表示ができます。
イメージ レジストリの使用
Azure Container Registry、Docker Hub、GitHub などから、コンテンツの表示やイメージのプッシュ、プル、削除ができます
Azure Container Registry 内のイメージは、VS Code から直接 Azure App Service または Azure Container Apps にデプロイできます。始めるには、Azure へのデプロイを参照してください。レジストリの認証と操作方法の詳細については、コンテナー レジストリの使用を参照してください。
コンテナー内で実行されているサービスのデバッグ
.NET (C#) と Node.js を使用して構築され、コンテナー内で実行されているサービスをデバッグできます。この拡張機能は、デバッガーでサービスを起動したり、実行中のサービス インスタンスにデバッガーをアタッチしたりするのに役立つカスタム タスクを提供します。詳細については、コンテナー化されたアプリのデバッグおよびコンテナー ツール拡張機能のカスタマイズを参照してください。
Azure CLI との統合
Container Images: Run Azure CLI (コンテナー イメージ: Azure CLI の実行) コマンドを使用して、スタンドアロンの Linux ベースのコンテナーで Azure CLI (コマンドライン インターフェイス) を開始できます。これにより、分離された環境で完全な Azure CLI コマンド セットにアクセスできます。利用可能なコマンドの詳細については、Azure CLI の概要を参照してください。
次のステップ
詳細については、以下を参照してください。