プロジェクトとエディターの設定をカスタマイズする

完了

代理店のプロジェクトの 1 つに開発コンテナーを設定しました。 これで、Docker と Dev Containers 拡張機能を持つすべてのユーザーが "単に機能" するようになります。 依存関係をインストールする必要があります。 また、知らない Visual Studio Code 拡張機能も必要になる場合があります。

さいわい、devcontainer.json ファイルを使用して、すべてのプロジェクトのセットアップを完全にカスタマイズして自動化できます。

devcontainer.json を詳しく見る

Products Dashboard プロジェクトの .devcontainer/devcontainer.json ファイルの主なオプションを見てみましょう。 一度にすべてを見ると少し長いので、セクションで見てみましょう。

[ビルド構成]

image プロパティは、コンテナー イメージと呼ばれるものに基づいて、コンテナーの作成方法を定義します。

"image": "mcr.microsoft.com/devcontainers/python:0-3.11"
},

このイメージは devcontainers/images リポジトリでホストされており、ここでさらに確認できます。 このリポジトリ内のイメージはすべて 事前に構築されたイメージであり、ワークフローが高速化され、 .devcontainer/devcontainer.json 構成が簡単になります。

Dockerfile または Docker Compose ファイルと呼ばれるファイルを使用して、セットアップを構成することもできます。 これらのファイルは、 .devcontainer フォルダーに保存でき、追加のソフトウェアのインストールなど、特定のセットアップ要件をさらに構成できます。 詳細については、 開発コンテナーのドキュメントを参照してください

特徴

開発コンテナー 機能 は、自己完結型の共有可能なインストール コードユニットと開発コンテナー構成です。 この名前は、いずれかを参照することで、自分自身やコラボレーターが使うツール、ランタイム、またはライブラリの "機能" をすばやく簡単に開発コンテナーに追加できるという考えに由来しています。

VS Code のコマンド [Dev Containers: Add Dev Container Configuration Files] (Dev Containers: 開発コンテナーの構成ファイルの追加) を使うと、Git や Azure CLI のインストールなど、既存の開発コンテナーの構成をカスタマイズするスクリプトの一覧が表示されます。

プロジェクトの設定

ファイルの後のセクションでは、プロジェクトの構成を直接扱います。

customizations は、VS Code や GitHub Codespaces などの 開発コンテナーをサポートする製品の製品固有のプロパティを設定します。

たとえば、 vscode.settings を設定して、マシン固有の設定をコンテナーにコピーできます。 これらの設定は、独自の Visual Studio Code のセットアップで使用できます。 それらを settingsに追加することで、このプロジェクトを開くすべてのユーザーがこれらの特定の VS Code 設定を取得できるようになります。

この Python コンテナーでは、基本イメージのmcr.microsoft.com/devcontainers/python:0-3.11これらの設定を確認できます。 ユーザーに改善された Python 編集エクスペリエンスを提供します。

  • customizations.vscode プロパティ内の extensions 配列を使用して、コンテナーに接続するときに Visual Studio Code にインストールする Visual Studio Code 拡張機能を指定できます。 通常の Visual Studio Code のセットアップと、既に使用しているすべての拡張機能は、開発コンテナーを使用している場合には存在しません。 拡張機能は、ここで ID と共に指定されます。

postCreateCommand

postCreateCommand プロパティを使用すると、コンテナーの作成後に必要なコマンドを実行できます。 最初の演習で覚えている場合は、依存関係をインストールするために pip3 コマンドを実行する必要がありました。 しかし、それを行うにはどうすればよいでしょうか。 そうでない可能性があります。 自動的に発生し、他のユーザーが心配する必要がないように、ここで構成できます。

次の演習では、devcontainer.json ファイルを変更して、プロジェクトのいくつかの側面を自動化し、他の開発者がすぐに成功できるように設定します。