こんにちは、全力開発部の @konoka-iori です。
脱Docker DesktopしてWSL2とDev Containerを使った開発環境に移行しました。
前に開発環境をDev Containerでコンテナー化してみたよという記事も書いているので、そちらも参考にしてみてください。 (この記事を書いている段階ではまだDocker Desktopを使っていました)
Docker Desktopやめたい理由
Docker DesktopはWindowsでDockerを使う際に便利なツールですが、開発したいときに毎回Docker DesktopとVS Codeをそれぞれ開く必要がありました。
極度のめんどくさがり屋な私は、毎回Docker Desktopも一緒に開かなくてはいけないというのが面倒だと感じていました。
常時起動しておくこともできますが、私は開発以外にも生成AIからゲームまで幅広い用途でPCを使っています。
とくにゲームのマッチング待機中に開発していることもあるため、マッチングしたらPCには即開発用のリソースを解放してゲームの処理に集中してほしいという変な要望があったのです。
(私が主にやっているタンクやヒーラーのジョブは戦闘中落ちるわけにはいかず……身内のPTだからまだよかったものの、IDでタンクに全まとめさせておいて落ちるヒーラーとか最悪ですからね。あと、フリーズしたタンクからヘイトを奪うピクトマンサーとか。なんかピクトマンサーの火力高すぎません?)
ほかにも、
- 正直、Docker Desktopの機能を使い切れていない
- たまにDocker Desktopが重い
- Docker Desktopを更新しようとしたら、更新が終わらなくなりトラブルになったことがあった
- なんかライセンス問題で巷がざわついてる(個人利用だからあまり関係ない……?)
などなど。 Windowsで気軽にDocker使えるのは良いのですが、もうちょっと軽くてシンプルな方法はないかなと思いました。
Docker Desktop内部ではWSL2を使用しているため、「どうせWSL2使っているのだから、もう直接WSL2内にDockerをインストールしてVS CodeのDev Containerを使えばいいのでは?」と気持ちもありました。
Docker Desktopとの別れ
Docker Desktopには、はじめてDockerに触れたときから大変お世話になりました。 素晴らしいツールをありがとうございました。
Docker Desktopは普通のWindowsアプリケーションと同じ方法でアンインストールできると思いますが、私はちょうど別件でWindowsをクリーンインストールしたかったので、その際にDocker Desktopも一緒に散っていきました。
WSL2とVS Codeをインストール
新環境のWindowsには当然なにもインストールされていません。
まずはWSL2をインストールします。 WSLのインストールは非常に簡単で、以下のコマンドをPowerShellで実行するだけです。
|
|
Ubuntuを指定したい場合は、以下のコマンドを実行します。
|
|
WSL2が正しくインストールされているか確認するために、以下のコマンドを実行します。
|
|
その後、息を吸うように VS Code をインストールしたのち、Dev Containerをインストールします。
WSL2にDockerをインストール
WSL2といっても中身はUbuntuです。そのため、通常のUbuntuと同様にDockerをインストールします。
Windows TerminalなどからWSL2のUbuntuに接続し、以下のコマンドを実行します。
|
|
get.docker.com からDockerをワンライナーでインストールするスクリプトをダウンロードして実行するだけです。便利ですね。
以下のコマンドでDockerが正しくインストールされているか確認します。
|
|
Dev Containerをセットアップする
次に、VS CodeでDev Containerの設定を行います。
WSL2でDev Containerを使う場合、以下の設定を行います。
|
|
この設定しておかないとWindows側のDockerを使おうとしてしまい、WSL2内のDockerを使うことができません。
詳しくは以下の記事を参考にしてください。私がここで沼った話を書いています。
また、私は以下のような設定も追加で行いました。
|
|
dev.containers.copyGitConfig
を True
にすると、WSL2内にGitの設定を行っておくだけでDockerコンテナーの中でもGitの設定がそのまま使えるようになるのでおすすめです。
Dev Containerで全力開発する
あとは、Docker Desktopを使っていたときと同じ流れで環境構築を行います。
VS CodeのDev Containerで「Reopen in Container(コンテナーで開く)」または「Clone Repository in Container Volume(コンテナーボリュームにリポジトリを複製)」を選択して、開発を始めるだけです。
Dev Containerの使い方は以下の記事を参考にしてください。
まとめ
これでDocker Desktopから卒業することができました。
Docker Desktopは非常に便利なツールですが、私のような使い方をする場合はWSL2とDev Containerのほうが軽くてシンプルで使いやすいと感じました。
私と同じように、Docker Desktopやめたいと考えている方の参考になれば幸いです。