Dev Container の各種設定のカスタマイズ
devcontainer.json ファイルのカスタマイズ
必要な設定やプラグインなどを追加することで、 devcontainer.json ファイルをカスタマイズできます。
変更した設定を追加する
エディターで
devcontainer.jsonファイルを開きます。左のガターで、
をクリックし、 IDE から変更された設定を追加する を選択します。
設定は
customizationsセクションとして追加されます。 両方の設定を同期したり、他のカスタマイズオプションを選択したりする場合に役立ちます。
デフォルト以外のアプリケーションレベルの設定を追加したり、追加した設定オプションを変更したり、並べ替えたり、JSON スキーマからプロパティを追加したりすることもできます。
devcontainer.jsonファイルの設定セクションで Alt+Enter を押して、適切なオプションを選択します。
JetBrains マーケットプレイス(英語)から Dev Container にプラグインをインストールすることもできます。
プラグインの追加
ブラウザーで JetBrains マーケットプレイス(英語)を開きます。
必要なプラグインを見つけて、プラグインページを開きます。
プラグインページで、 追加情報 セクションまでスクロールし、 プラグイン ID をコピーします。
エディターで
devcontainer.jsonファイルを開きます。customizationsセクション内に次のコードを追加します。{ "customizations": { "jetbrains": { "plugins": [ "org.intellij.plugins.hcl" ] } } }pluginIDは、 JetBrains マーケットプレイス(英語)からの必要なプラグインの ID です (例:org.intellij.plugins.hcl)。
ローカル Git 設定をコピーする
Dev Container 内で Git 設定を追加設定する必要はありません。 Git 設定は、ローカルグローバル .gitconfig ファイルから Dev Container に自動的に追加されます。
Dev Container 内部の設定を確認するには、次の手順に従います。
サービスツールウィンドウで、 Docker | Dev Container と必要なコンテナーを選択します。
開始 ボタンをクリックしてコンテナーを起動します。
をクリックして ファイルの表示 を選択します。
ファイルのリストで .gitconfig を選択します。
利用可能な場合は次の設定がコピーされます。
user.email, user.name, pull.rebase, alias.*alias.*オプションはすべてのエイリアス設定を意味します。
特定の IDE バックエンドを追加
container.json で IDE の名前を指定できます。こうすると、 リモート プロジェクト用に Dev コンテナーを起動するたびに、そのバックエンド IDE が自動で起動します。
エディターで
devcontainer.jsonファイルを開きます。customizationsセクション内に次のコードを追加します。{ "customizations": { "jetbrains": { "backend": "<IDE-name>" } } }<IDE-name>は、使用する IDE の名前です。 例:IntelliJ。
ローカルフィーチャの追加と参照
カスタム構成 (ローカル機能) を定義し、コード補完を使用して devcontainer.json ファイルから参照できます。
詳細については、 開発コンテナー(英語)のドキュメントを参照してください。
ローカル機能を構成する
IDE の プロジェクト ツールウィンドウで、
.devcontainerフォルダーを右クリックし、 を選択します。開いたウィンドウで、機能 ID と同じ機能の名前を追加します。
作成された機能フォルダーを右クリックし、 を選択します。
まず、
devcontainer-feature.jsonファイルを作成し、次にinstall.shファイルを作成します。その結果、両方のファイルは作成された機能フォルダー内に存在するはずです。

devcontainer-feature.jsonファイルを開き、機能設定を追加します。 関連プロパティの詳細については、 開発コンテナー(英語)のドキュメントを参照してください。install.shファイルを開き、機能をインストールまたは構成するスクリプトを追加します。これで、
devcontainer.jsonファイル内でフィーチャを参照できるようになります。devcontainer.jsonファイルを開き、featuresセクション内で、自動補完を使用してローカル機能への参照を追加します。