個別のコンテナーを構成する
開発コンテナーは、多くの場合、単一のフォルダー、リポジトリ、またはプロジェクトに結び付けられていますが、セットアップを簡素化したり、ツールを分離したりする方法として、複数のフォルダーで使用することもできます。特定のツールセットのために、複数のリポジトリにまたがるソースコードを単一のフォルダーに格納していると想像してください。
例
📁 Repos
📁 node
📁 python
📁 starter-snake-python
📁 vscode-remote-try-python
📁 your-python-project-here
📁 go
📁 dotnet
では、./Repos/python
フォルダー内のすべての Python プロジェクトで使用するコンテナーをセットアップしてみましょう。
-
Visual Studio Code を起動し、コマンドパレット (F1) またはクイックアクションのステータスバー項目から Dev Containers: Open Folder in Container... を選択し、
./Repos/python
フォルダーを選択します。ヒント: フォルダーを開く前にコンテナーの内容や設定を編集したい場合は、代わりに Dev Containers: Add Dev Container Configuration Files... を実行できます。
-
次に、開発コンテナーの開始点を選択します。フィルター可能なリストからベースとなる開発コンテナー定義を選択するか、選択したフォルダーに既存のDockerfileまたはDocker Compose ファイルがある場合はそれらを使用できます。
注: Alpine Linuxコンテナーを使用する場合、拡張機能内のネイティブコードにある
glibc
の依存関係により、一部の拡張機能が動作しない場合があります。リストは、開いているフォルダーの内容に基づいて自動的に並べ替えられます。表示される開発コンテナーテンプレートは、Dev Container Specificationの一部であるファーストパーティおよびコミュニティインデックスから取得されます。私たちは、devcontainers/templates リポジトリにスペックの一部として一連のテンプレートをホストしています。そのリポジトリの
src
フォルダーを閲覧して、各テンプレートの内容を確認できます。 -
コンテナーの開始点を選択すると、VS Code は開発コンテナー構成ファイルを
./Repos/python/.devcontainer
フォルダーに追加します。 -
VS Code ウィンドウがリロードされ、開発コンテナーのビルドが開始されます。進捗通知によってステータスが更新されます。開発コンテナーをビルドする必要があるのは、最初に開くときだけです。最初のビルドが成功した後にフォルダーを開くのは、はるかに高速になります。
-
ビルドが完了すると、VS Code は自動的にコンテナーに接続します。接続後、ファイル > 開く... / フォルダーを開く... を使用して、
./Repos/python
の下のフォルダーのいずれかを選択します。 -
しばらくすると、VS Code は同じコンテナー内でフォルダーを開きます。今後、アクティビティバーのリモートエクスプローラーを使用して、このサブフォルダーをコンテナー内で直接開くことができます。
ヒント: ローカルファイルシステムをマウントする代わりに、同様のフローを使用して、ソースコードをクローンする分離された、より高性能なボリュームでコンテナーをセットアップできます。詳細については、高度なコンテナーのディスクパフォーマンスの向上の記事を参照してください。