devcontainer
6 コマンド
開発環境をコンテナで配る devcontainer
Dev Containers は、開発環境そのものをコンテナとして記述・配布する仕組み。VS Code Dev Containers 拡張や GitHub Codespaces と組み合わせ、「誰の手元でも同じ環境」を即座に立ち上げられる。
開発コンテナを定義する devcontainer.json
`devcontainer.json` は Dev Container の設定を記述する中心ファイル。ベースイメージ、ポート転送、VS Code 拡張、起動後コマンドなどをまとめて指定する。
ツールを宣言的に追加する features
features は devcontainer.json から追加のツール(Node、Python、AWS CLI、Docker-in-Docker など)を宣言的に入れる仕組み。OCI アーティファクトとして配布され、Dockerfile を書かずに環境を拡張できる。
compose と連携する dockerComposeFile
Dev Container は単一コンテナだけでなく、`docker-compose.yml` と組み合わせて DB や Redis などを含む複数サービス構成にできる。アプリ側のコンテナを `service` として指定する。
クラウドで開発環境を動かす Codespaces
GitHub Codespaces は `devcontainer.json` を GitHub のクラウド VM 上で起動するサービス。ブラウザや VS Code から接続して、ローカル環境を整えずに開発できる。
IntelliJ 系から devcontainer に接続する JetBrains Gateway
JetBrains Gateway は IntelliJ / WebStorm / PyCharm などの IDE をリモートのコンテナや SSH 先に接続するランチャ。`devcontainer.json` を読み込み、VS Code 以外の開発者も同じ定義を使える。
