Docker for Windows利用メモ
事前準備
Windows 10 Proを購入しましょう。
Docker for Windows
Hyper-Vの有効化
Docker for windowsを利用するにはHyper-Vを有効化する必要があります。
Install Hyper-V on Windows 10 | Microsoft Docs
インストール
アプリは公式サイトからダウンロードしてインストールします。
Get started with Docker for Windows - Docker
共有フォルダの設定
Docker for WindowsはボリュームのマウントにSambaを利用するため、以下の設定が必要です。
トレイを右クリックして Settings... > Shared Drives
から マウントに使うパスを設定します。
一番上のフォルダが設定されていれば、配下のどこのフォルダもマウントできるので、特にこだわりがなければ C
でよいと思います。(2016.12.26削除: できなかった、、)(この設定だとCドライブが丸々SambaでWindowsの共有フォルダになってしまうのでセキュリティが気になる人はもっと絞った場所が良いと思います。)
利用してみた感想
LinuxやMacで動かしたときよりはインタラクティブモード周りがちょっとイケてない感ありますが、Ruby on Rails開発は一通りできる感じです。
Docker for Macよりは共有フォルダのアクセス速度が体感で早いと思いました。(Windowsのほうが設定がやや面倒ですが)
備考
Cygwinからdocker execを利用する
docker execをするときにCygwinからだとうまく動作しないのでwinptyを挟んで実行できるようにします。
winpty docker exec -it 123 bash
docker-compose run がインタラクティブに使えない
-d
オプションで使うこともできますが、使い勝手が悪かったので、 docker-compose up
した状態で docker exec
でbashにはいって必要なことをしています。
buildなどで異様に時間かかってるときウイルス対策ソフトのリアルタイムスキャンをOffにする(2016.12.26追記)
Hyper-Vマネージャを開いてDockerのVMのCPU使用率が0%なのに、build等が遅い場合はウイルス対策ソフトのリアルタイムスキャンがボトルネックになっている場合があります。
タスクマネージャーを開いて、リアルタイムスキャンのプロセスのCPU使用率が上がっていたらそうだと思います。
一時的にリアルタイムスキャンをOffにすることをおすすめします。