generated at
devcontainer
開発環境をコンテナ内に閉じ込めつつ、IDEからはローカル開発と遜色ない使い勝手を提供する仕組み。
元々は Visual Studio Codeの機能だったが、2022年に仕様がオープンになった。

メリット
ローカル環境の差異に縛られず、全員がおなじ開発コンテナで開発を行える
IDEに縛られず、任意のIDEと連携利用可能
GitHub Codespaces などのdevcontainerで動作する環境が利用可能
JetBrains Spaceも将来的に対応予定)
Pythonやnodeなどのバージョンをプロジェクト別に決めてカプセル化できる
これまでもpyenvanacondaなど仕組みはあったが共通仕様ではなかった
ryeがローカルでこれを実現しようとしているがどうなるだろう・・・?)

デメリット
ローカル開発ほど気楽ではない
ローカル開発で困ってないのに一手間増える感じがする


参考

参照
devcontainer.json 設定値のリファレンス
設定サンプル集のGitHubリポジトリ
色々試行錯誤している人の例
色々試行錯誤している人の例
2022/08/31 devcontainerがオープン仕様化
> IMPORTANT NOTE: We've migrated most of the contents of this repo to the devcontainers GitHub org, as part of the work on the open Dev Container specification.