BETA

WindowsにDockerを導入しようとして挫けた話

投稿日:2018-12-19
最終更新:2018-12-19

経緯

会社のWindowsが10Professionalだったので隙間時間にDockerを入れてみようと思った。
※今年5月時点なので以下の問題は解消済みの可能性有り。

DockerforWindowsはHyper-Vを利用する。Hyper-VはWin10Professional以上でしか使えない。
つまり、Win10より前のOSやWin10Homeの場合はDockerforWindowsは使えない。
ただし、DockerforWindowsリリース前から利用されていたDockerToolBoxを使えば、Dockerを導入できる。
Windows10HomeにDockerを入れる(1)
DockerforWindowsのほうが新しいし、導入が簡単なんでしょ?
Windows10ProfessionalならDockerforWindowsのexeを実行すればすぐhello-worldまで行けると思っていた時期が私にもありました。

ちなみに以下の手順を参考に進めた
触って理解するDocker
docker psまでは順調だった。
docker run hello-worldでエラーが…

encountered an error during CreateContainer: failure in a Windows system call: Logon failure: the us er has not been granted the requested logon type at this computer.  

Hyper-Vが有効になってないやん!ってことらしいんだけど、Hyper-Vの設定をみたら確かに、インストール時に勝手に生成されるはずのMobyLinuxVMが入っていない…。
Hyper-V自体は有効だけど、MobyLinuxVMが入っていない。
なにも入っていない空のHyper-Vなのに、お前はどこでrunningしているのだDocker…
そもそも、VMやVurtualBoxとHyper-Vは共存できないらしいので、VurtualBoxが入っている弊社PCでDockerforWindowsが正常に動くはずはないのだ…

公式Githubに同様の現象が報告されていたけど、現時点で有効な解決策はないっぽい
VurtualBoxもDockerも使いたいって人はDockerToolBoxでDocker導入したほうがいいね
そもそもDockerToolBoxは、VurtualBox上にMobyLinuxVMとかいう軽量なLinuxOSを載せて、そこ経由でDockerを動かしている感じ。
DockerforWindowsは、VurtualBoxの代わりにWindowsが公式プロデュースしてるHyper-Vで同じことするようにしただけ。
VurtualBoxとHyper-Vは相性が悪くて、同時起動するとブルスクするらしい。
VurtualBoxやVMwareを完全に捨てるつもりはないって人は、Hyper-Vが使える環境でもおとなしくDockerToolBoxを使ってDocker入れたほうがいい。
やっぱりVurtualBoxのほうがリソース食って、結局Dockerの利点である軽さを潰しかねないという問題点はあるけど

僕はVirtualBoxでUbuntuを立ててそこにDocker環境を構築する方法を選択。

Windows管理者のためのDocker入門
Windows10のコンテナとDockerを試す
DockerToolBoxforWindowsの使い方

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

@showyleeの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!