Docker DesktopのDev Environmentsがbetaになったので使ってみた
要約
- docker desktopにDev Environmentsというタブが増えてたので使ってみた
- とっても簡単だけど、カスタマイズ性・管理のしやすさはVSCodeの
Dev Containerに劣りそう - 「githubのサンプルコードをすぐ試したい」みたいな用途なら最速かつシンプルで初学者におすすめかも
はじめに
coloname33です。
私は普段、この記事にあるように、vscodeのDev Containerを使って開発をしています。
ちょうどさっきDocker DesktopをUpdateしたところ、新しくDev Environmentsというタブが増えていることに気づいたので、自分がzennのコンテンツ管理に使っているレポジトリを使って試してみました。
使ってみる
Create
タブを開くと、こんな感じの画面が出てきます。
とりあえずCreate new environmentを押してみます。
右上のCreateボタンを押してもいけるっぽいです。

Overview
押してみると、ご丁寧にOverviewでいろいろ説明してくれています。
vscodeとか書いてあるんで思ったより使いやすそう。
Continueを押します。

Setup
setupが始まりました。New Dev Environmentの方では、どうやらgit repositoryを指定すれば勝手にcloneして環境を用意してくれるみたいです。
試しに、zennのデータを管理するリポジトリを指定して、Continueを押してみます。

ちなみに、Existing Dev Environmentの方では以下のようにdocker imagesを指定することができます。
例えば、OSSとかで動作環境がdocker imagesとして公開されてるパターンとかなら、最速でセットアップできそう?

Preparing
もう実行が始まりました。
ログをよく見ると、途中でコードの中身から言語を推測してセットアップしてくれるみたいです。
そして、このzenn-contentはほんとはzenn-cliの実行のためNode.js環境を整えてほしいのですが、中身はほぼmarkdownファイルなので、検知できませんでした。。。
完了するとSuccessfulと表示されるので、Continueを押します。

Ready
立ち上げが完了したみたいです。
ご丁寧にVSCodeを起動するリンクまでありましたので、押してみます。

VSCode
立ち上がりました。
どうやらDev Containerとして認識されているみたいです。

私のプロジェクトはすでにDev Containerを導入しているので、そのファイルの中身とは違う環境になって混乱しそうですね。。。
実際、立ち上がったコンテナと普段開発しているDev Containerは別物で、devcontainer.jsonではnodeを入れているのに、このコンテナにはnodeが入っていないのがわかります。

最後に
Docker DesktopのDev Environments機能を使ってみました。
VSCodeのDev Containerと違って自分で環境を選ばずとも自動で検知してくれるのは、特に初学者にとっては非常に便利な気がします。
gitのクローンからやってくれるところまで含めると、ちゃんとした開発環境をセットアップ・管理するという用途は最初からターゲットにしてなそうな気もします。
まとめると、「とりあえずサンプルプログラム動作させてみたい」みたいなときに最速&シンプルに環境を整えてくれるツール、という印象でした。
初学者におすすめな気がします。試したいレポジトリなどあれば、ぜひ使ってみてください。
Discussion