[追記]
環境構築手順のまとめを Windows 10 Home WSL2でDockerを使う に更新しました
当Qiitaは、Dockerの環境作りをしようと試みた過程と結果のメモです。
結論から言うと、 WSL2をきちんと設定して使うことが重要でした。
環境
- Windows 10 Home
- WSL2(ubuntu 18.04)
- CPU: Core-i7
- RAM: 16GB
- Docker for windows
やりたかったこと
激オモなrailsプロジェクトをDocker環境で実行したい。
[やったこと1] Vagrant操作でDocker環境を作る
WSL2を使うと何かと厄介な問題に引っかかりまくることが分かったので、VM wareでVirtual環境を作ることにした。
手順(雑)
- Vagrantをインストール
- Virtual Boxをインストール
-
vagrant up
,vagrant ssh
- sshログイン先で、
docker
コマンド
結論
rails s
してから、localhostにアクセスし、トップページを表示するまでに、4,5分くらいかかる
[やったこと2-1] WSL2でDocker for windows part-1
Windows 10 Home はHype-Vの環境がありませんが、WSL2をうまく使えば、Dockerを使えるとのことでやってみた。
手順(雑)
- Docker for Windows をインストール
- WSL2のintegrationを許可する
- 使えた
発生した問題
vagrantと同じく、localhostにアクセスするloading時間が異常に長い…(5,6分)
[やったこと2-2] WSL2でDocker for windows part-2
上記で発生した課題として、loading時間が異常に長いというのがあった。
原因
調べてみると、これの原因はディスクアクセスに時間がかかっているぽい。
具体的には、上記の[やったこと2-1]において、ubuntuターミナル上から /mnt/c
で(windowsディレクトリを見にいき)、runしたいプロジェクトを指定したため、loading時間が異常に長くなることがわかった
解決策
/mnt/c
でwindowsディレクトリを見に行くのではなく、ubuntu上に、dockerをrunしたいプロジェクトを作成し、実行する。
loading時間は、10sくらいになった。
まとめ
Windows 10 Homeでdocker環境構築するのは本当に面倒くさい
が、WSL2の設定をちゃんとやれば、VMよりも断然早く環境構築することができる