ECブログリレー Windows wsl2

WebエンジニアがWindows 10を使うべき8つの理由

ECブログリレー Windows wsl2

EC事業部エンジニアのtagamyです。

GMOペパボでは、業務で支給されるPCは、業種にかかわらずWindows 10とmacOSから好きなほうを選択できます。エンジニアの9割以上はmacOSを選択しますが、私はレアなWindows派のエンジニアです。

周りがほとんどmacOSで開発を行っている環境でチーム開発を行っていますが、近年のWindows開発環境の進歩により、業務で困ることは全くありません。本日は社内への布教も兼ねて、Webエンジニアの視点で、Windows 10で開発業務を行うときに便利な機能を紹介したいと思います。

一部macOSでも可能な内容が含まれていますが、「最近のWindowsだったら同じことができるよ!」ということが共有できたらうれしいです。

  1. WSL2でLinux環境を構築できる
  2. aptでソフトウェアパッケージをインストールできる
  3. Docker環境の構築が簡単
  4. Windowsとのファイル共有が簡単
  5. Visual Studio CodeとWSL2の連携
  6. Windows Terminalがかっこいい
  7. ゲーミングPCで開発ができる
  8. GMOペパボに入社するとSurface Book 3が支給される!

WSL2でLinux環境を構築できる

WSL2が何かということをざっくり説明しますと、Windows上でUbuntu 20.04 LTSが動きます。Linux互換とかではなく、Ubuntu 20.04 LTSそのものが動きます。Ubuntu以外のディストリビューションも選択できますが、特にこだわりがなければ、Ubuntu 20.04 LTSをお勧めします。

WSL2は日々改善が行われていますので、詳細や導入方法は公式サイトをご確認ください。

Webアプリケーションを動かす運用サーバーではUbuntuが選択される機会が多くなっています。運用サーバーと同じコマンド体系がローカルPCで利用できることは、webアプリケーションを開発する上で大きなメリットです。これからLinuxを勉強したい初学者の方にもお勧めです。

aptでソフトウェアパッケージをインストールできる

WSL2で動いているのOSはUbuntuですので、Webアプリケーションを動かすためのソフトウェアは、aptコマンドでインストールできます。インターネット上にはUbuntu向けのソフトウェアや、導入手順が多数公開されていますので、Google先生に質問すれば環境構築で困ることはありません。

Docker環境の構築が簡単

Webアプリケーションの開発環境の構築方法としましては、aptで利用したいプログラミング言語やサーバーソフトウェアをインストールしてもよいですが、チーム開発を行う場合は、他のメンバーと同じ開発環境を利用して開発をおこなうことが重要です。そのための手段として、私が所属するチームでは、業務で利用する開発環境の構築はDockerを利用しています。

WSL1ではDocker環境の構築が大変でしたが、WSL2からはDocker Desktop for Windowsをインストールするだけで、WSL2からDockerエンジンに接続できるようになりました。UbuntuにDockerをインストールする必要はありません。簡単ですねー。

Dockerエンジンに接続できたら、awesome-composeなどを参考に、お好みの開発環境を構築しましょう。

Dockerfileやdocker-compose.yamlをチームで共有すれば、macOSユーザーと全く同じ環境で開発を行うことができます。

Windowsとのファイル共有が簡単

WSL2ではWindowsとLinux間のファイル共有も簡単です。Ubuntuから以下のコマンドを実行すれば、UbuntuのカレントディレクトリがWindowsのエクスプローラーで開きます。簡単ですねー。

$ explorer.exe .

Linuxからexeコマンドが実行できてしまうことに、始めは戸惑いますが、そういうものだと思えばそのうち慣れます。

Visual Studio CodeとWSL2の連携

私は10年ちかくEmacsエディタで開発をおこなっていましたが、WSL2で開発環境を構築するようになってからは、Visual Studio Codeに乗り換えました。Linux上でコードを編集できることがEmacsを使い続けていた理由なのですが、Visual Studio CodeであればWSL2上のコードを簡単に編集できます。

Ubuntuのターミナルから以下のコマンドを実行するだけで、カレントディレクトリをプロジェクトとしてVisual Studio Codeで編集できます。

$ code .

簡単ですねー。Microsoft社が開発しているエディタですので、WSL2との連携もばっちりです。

Visual Studio Codeは、業務で利用するTerraformはPuppetの構成管理ファイルなど、ちょっとマイナーな文章でもフォーマットや構文チェックができるところも気に入っています。

Windows Terminalがかっこいい

WSL2で利用するUbuntuには標準のターミナルが付属していますが、あまり使い勝手が良くありません。ターミナルは別途Windows Terminalをインストールしましょう。 美しいフォントや配色がとてもかっこいいです。タブ操作やペイン(領域)の画面分割が利用できるので、これまでscreenやtmuxで行っていたことをGUIで操作できます。

いままでいろいろなターミナルを利用してきましたが、Windows Terminalはターミナル史上の最高傑作といっても過言ではありません。

MicrosoftストアではWindows TerminalとWindows Terminal Previewの2つのバージョンが公開されていますが、新機能をいち早く利用できるWindows Terminal Previewのご利用をお勧めします。

ゲーミングPCで開発ができる

みなさんサイバーパンク2077はプレイしましたか?私はサイバーパンク2077を最高の環境で遊ぶために、新しくゲーミングPCを購入しました。 ゲーミングPCは高性能なGPUを搭載していますので、機械学習やビットコインマイニングなど、GPUパワーが必要な開発に有効活用できます。

なによりも業務終了後には、STEAMXbox Game Pass for PCで提供されているPC用ゲームで気分転換できることこそが、Windowsを利用すべき最大の理由ではないでしょうか。

GMOペパボに入社するとSurface Book 3が支給される!

GMOペパボの入社して、Windows PCを希望すれば、今ならSurfaceシリーズでもっともハイエンドなSurface Book 3の法人モデルが業務用PCとして支給されます。メモリは32GB搭載しているので、Dockerコンテナをたくさん立ち上げても大丈夫です。

Windowsユーザーのエンジニアの皆さん、ぜひGMOペパボでいっしょに働いてみませんか?