IntelliJ IDEA 2024.3 ヘルプ

Dev Container の概要

開発コンテナー (Dev Container) は、完全に機能する開発環境として使用されるように構成された Docker コンテナーです。

IntelliJ IDEA を使用すると、このようなコンテナーを使用してプロジェクトを編集、ビルド、実行できます。開発コンテナーの仕様を確認する必要がある場合は、Dev Container プロパティ(英語)を参照してください。

IntelliJ IDEA は、Docker Compose(英語) プロパティで構成できる複数のコンテナー接続もサポートします。

Dev Container には次の利点があります。

環境の一貫性

開発の開始段階でも、既存のプロジェクトを移行するプロセス中でも、Dev Container はすべてのチームメンバーが同一の環境で作業できるようにします。これにより、アプリケーションがマシンによって動作が異なる場合でも、「自分のマシンでは動作する」という問題が解消されます。

ワークスペースのクイックセットアップ

プロジェクトの起動とセットアップはいくつかのコマンドに削減されるため、新しい従業員はほぼ即座に作業を開始でき、コストのかかる環境のセットアップに費やす時間を最小限に抑えることができます。

セキュリティと隔離

各 Dev Container はオペレーティングシステムから完全に分離されているため、現在のツールの設定や互換性に影響を与えることなく、新しいツールやテクノロジを試すことができます。

メンテナンスとアップデートの容易さ

コンテナー化された環境でツールと依存関係を更新する場合、従来の作業環境によくある長くて複雑な手順は必要ありません。

リモートの開発機能

コンテナーはリモート環境で実行でき、そのリソースと機能は開発中に利用できるようになります。

Dev Container を作成するためのシナリオ

IntelliJ IDEA では、Dev Container を開始するために使用できるさまざまなシナリオがあります。

関連ページ:

IDE 内で Dev Container を起動する

IntelliJ IDEA 内のルートにファイルを含むフォルダーがあるプロジェクトを開き、Docker を使用して IDE から Dev Container を起動できます。IDE から Dev Container を作成する IDE 内でファイルを含むプロジェクトを開きます。エディターでファイルを開きます。左のガターで、をクリックし、Dev Container を作成してソースをマウントを選択して、コンテナー内で作業するバックエンド IDE を選択します。コンテキストメニューでは次のオプションも...

IDE のウェルカム画面から Dev Container を起動する

IDE のウェルカム画面から Dev Container を起動して、プロジェクトを Dev Container に直接複製したり、ローカルファイルシステムからプロジェクトを開いたりすることができます。ウェルカム画面から Dev Container を起動する IDE のウェルカム画面で、リモート開発ノードをクリックします。右側の使用可能なオプションから、Dev Container の作成をクリックします。開いたページで、ローカル Docker への接続が自動的に検出されます。接続がない場合は、ロ...

リモートプロジェクトのために Dev Container を開始する

リモートファイルシステムにあるファイルを持つプロジェクト、または Git リポジトリからクローンされたプロジェクトに対して、リモートマシン上で Dev Container を起動できます。リモートサーバーで Dev Container を起動する IntelliJ IDEA を起動します。ウェルカム画面からリモート開発をクリックし、右側のオプションから Dev Container の作成をクリックします。開いたページで、をクリックして、SSH 経由でリモートマシン上の Docker に接続します。リ...

前提条件

ローカル Dev Container の前提条件:実際の Dev Container を記述するファイルを含むフォルダーを含むプロジェクトがあります。現在、ファイルのコード補完は制限されています。ただし、次のプロパティは使用できます。ビルドプロパティがサポートされています。一般プロパティ、、、を除く。Docker compose プロパティがサポートされています。ライフサイクルスクリプトはを除いてサポートされます。ポート属性では、のみがサポートされます。ホストの最小要件はサポートされていません...