LoginSignup
57
74

More than 3 years have passed since last update.

WSLに開発環境完全移行してみる

Last updated at Posted at 2018-07-15

はじめに

最近DockerがWSLで使えるようになったらしいというのが、話題に上がっていました1
しかも、Visual Studio Codeも使えるようになっていたらしい23
じゃあ、いっそ開発環境全部全部WSLに移行できるんじゃ!?

情報は各サイトにまとまってはいるのですが、一か所にまとめておきたいのでメモ。
詳しいことは各リンクにあります。先人達に感謝です。

流れ

  • WSLの導入
  • X Window Serverのインストール+日本語化
  • Visual Studio Codeのインストール
  • Dockerのインストール

WSLの導入

章立てといてあれですが、省略。
Ubuntu16.04想定です。

初めて起動したらやっておく
$ sudo apt update
$ sudo apt upgrade -y

X Window Serverのインストール4

VcXsrvのインストール

https://sourceforge.net/projects/vcxsrv/
からダウンロードし、手順通りに進めるだけです。

ディスプレイ設定
$ echo 'export DISPLAY=:0.0' >> .bashrc
$ source .bashrc

スケーリング設定

  1. タスクバーのVcXsrvアイコンを右クリック
  2. XLaunchを右クリック
  3. プロパティをクリック
  4. 互換性タブをクリック
  5. 高DPI設定の変更をクリック
  6. 高いDPIスケールの操作を上書きしますにチェック

これをしないをフォントがぼやけます。

Windowsフォントを読み込む

Windowsフォントを読み込む
$ sudo apt install -y fontconfig
$ sudo ln -s /mnt/c/Windows/Fonts /usr/share/fonts/windows
$ sudo fc-cache -fv

これをしないとVisual Studio Codeを日本語化したときに豆腐になりました。

Windows側でエラーが出るケースがあるとのコメントを頂きました。
その場合はWSLを管理者権限で再起動すれば良いようです。

Windowsフォントに設定

GUIのフォント設定
$ sudo apt install -y lxappearance
$ lxappearance

なんかワーニングが出ますが設定はできるようです。
Windowsに合わせるなら、Yu Gothic UIRegularで文字サイズは10か11。理想は10.5?

日本語入力の設定5

5の通りにやったらできました。
日本語と英語の変換はCtrl+スペースか半角/全角キーでできます。

Visual Studio Codeのインストール6

6からdebファイルをダウンロードします(以下の<file>.deb)。

$ sudo dpkg -i <file>.deb
$ sudo apt-get install -f 
$ curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
$ sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg
$ sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
$ sudo apt-get update
$ sudo apt-get install code 

以下のコマンドも必要。

$ sudo apt install -y libxss1
$ sudo apt install -y libgtk2.0-0
$ sudo apt install -y libasound2

起動は以下のコマンド。

$ code

Dockerのインストール7

Dockerのインストール
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install -y docker.io
$ sudo cgroupfs-mount
$ sudo usermod -aG docker $USER

ここでWSLを再起動し、管理者権限で起動する。

Dockerの起動
$ sudo cgroupfs-mount && sudo service docker start

おわりに

ひとまずセッティングはできたのでまともに動くかはこれから試します。
あと、EclipseとAndroid Studioも入れてみたいです。
あと、毎回VcXsrvを起動したり、WSLを管理者権限で起動するのが面倒なので、自動化したいです。

やってみて

  • 毎回VcXsrvとWSLを起動するのが面倒
  • VSCodeの画面が頻繁にバグる(XサーバやWSLを再起動しても直らないことも多い)
  • VcXsrvを立ち上げていると、ChromeのフォントやExcelの表示、操作がおかしくなる
  • 動作が微妙に遅い

などから、あまり満足はしていません・・・。
自分だけなのかなー、そうだといいな。

もっといい方法?

wlinuxというWSLに特化したディストリビューションが出ています。有償ですが、VSCodeのインストール、日本語化や各種言語のインストールまでコマンド一発でやってくれるのでおすすめ。
少し前までVSCodeが起動しないバグがあったが・・・。

X410というX Window serverもあります。同じく有償ですが、より安定しているっぽい?

両者ともよくセールしているので、もし買うならその時がいいと思います。

もっともっといい方法?

今でもたまにいいねがくるので・・・

VS Codeでカバーしている言語の開発なら、VS Code Remote Developmentがいいと思います。WSLにGUIやVS Codeを入れる必要もなくなります。

57
74
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
57
74