さいきん、WindowsでもDockerが使えるようになったのでそれを試してます。
以前からDocker for Windowsという名前でWindowsでもDockerを使う環境は提供されていましたが、あれはWindows上に仮想OSとしてLinuxを動かしてそのうえでDockerを動かすというものでした。なのでコンテナ上で動作するのはLinuxであり、Windowsのアプリケーションが動くわけではありませんでした。
もちろんそれでもいいというケースはあるんでしょうが、ずっとWindowsで動くサービスを作ってきた身としてはWindowsのアプリケーションを囲えるコンテナが使いたいわけです。Windows Server 2016からはそれが可能になるということでしたので、自分の開発環境をWindows Server 2016に無理やりアップグレードしてDockerを使ってみました。
使ってみたの感想はというと「思っていたよりもずいぶん重い」というものでした。
OSのイメージをダウンロードしてカスタマイズしてから動かしてるんだから当然と言えばそうなんですが、軽量だと言われているServerCoreでさえもかなり重く感じました。
もっと軽くして使おうとするとNanoServerを使わなければならないのですが、それだと機能不足だったりしてなかなかうまくいきません。
しばらく他の仕事をさぼってあれこれ使ってみましたが、いま動いているものをコンテナで動かそうとするのではなくてコンテナでも動かせるように再構成するほうが現実的だし、でもそんなことするくらいなら普通に仮想OSでアプリケーション動かすほうが楽でいいなと思っちゃいます。
せっかく調べたのにうまい使いどころが思いつかないので、最近買った本を読んで現実逃避しています。
IoTエンジニア養成読本 (Software Design plus)
- 作者: 片山暁雄,松下享平,大槻健,大瀧隆太,鈴木貴典,竹之下航洋,松井基勝
- 出版社/メーカー: 技術評論社
- 発売日: 2017/04/12
- メディア: 大型本
- この商品を含むブログ (5件) を見る
WindowsでDockerはまだまだ早いかも。