devcontainer とは
VSCodeで利用できる開発用コンテナ
コンテナの構成や設定をファイルで定義しておくことで、
2回のクリックだけで開発環境を構築できるようになる
- 左下の
><
マーク コンテナーで再度開く
ホストマシンでは実行できなかった go
コマンドが、
開発用コンテナに入ったことで実行可能になった
嬉しいこと
- 開発作業がコンテナ内で完結できる
- 他の作業と衝突しない
- 手軽に環境を復元できる
- 気兼ねなく削除できる
- 開発者間で環境を統一できる
- シェル
- プログラミング言語
- 依存パッケージ
- ツール
- 環境変数
- VSCode拡張機能、など
- 開発環境自体をバージョン管理できる
- 個別の環境構築マニュアルが不要になる
- 手作業によるミスも減らせる
前提
- VSCode
- 拡張機能 Dev Containers
- Docker
チュートリアル
New Dev Container (新しい開発コンテナー)
のところは
Open Folder in Container (コンテナーで再度開く)
を選択したほうが分かりやすい
(devcontainerの設定ファイルが現在開いているリポジトリに作成されるため)
設定ファイル
.devcontainer/devcontainer.json
に各種設定が記載されている
設定項目は以下を参考
Dockerfileを利用したい場合
build.dockerfile
で相対パスを指定する
devcontainer.json
{
・・・
"build": {
"dockerfile": "../Dockerfile"
},
・・・
}
VSCode 拡張機能を利用したい場合
devcontainer.json
{
・・・
"customizations": {
"vscode": {
"extensions": [
"MS-CEINTL.vscode-language-pack-ja"
]
}
}
・・・
}
拡張機能の歯車マークからdevcontainer.jsonに追加
も可能