TL;DR
- ToolBox 1.8.1b に同梱されている VirtualBox 5.0.2 だと VM の作成に失敗する
- 5.0.0 かテストビルドの 5.0.3 を使えばうまくいく
- Toolbox の次のバージョンでは修正版が同梱されるようなのでワークアラウンドな対応
駄文
公式から Docker Toolbox というのが出てきまして、さっさと Boot2docker から移行してくれとのアナウンスがありましたので、重い腰をあげて仕事用のMBP(Yosemite)と自宅のMBP(El Capitan)で移行しました。
移行はドキュメントの手順に従って行えば万事上手くいくはずなのですが、インストールが終わって docker-machie ls
したらなんか VM が起動していない状態になっていました。
なんか間違ったかと、一回消してみて再度作りなおしてみたり、Boot2Docker からのインポートを止めて素の VM を作ってみたりしましたがうまくいかない。
-D
つけるとデバッグ出力が見られるっぽいので眺めてたらエラーが出ている。
$ docker-machine -D create -d virtualbox --virtualbox-import-boot2docker-vm boot2docker-vm docker-vm . . . STDERR: VBoxManage: error: Code NS_ERROR_INVALID_ARG . . .
困ったと思って検索したら、Issue が立っていて、どうやら VirtualBox 5.0.2 の問題らしい。
VirtualBox のバージョンを 5.0.2 に以外にすれば動きそうなので、会社のものは安全側に倒して 5.0.0、家のは 5.0.3 にしておいた。
$ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM docker-vm * virtualbox Running tcp://192.168.99.100:2376
よさそう。
eval "$(docker-machine env docker-vm)"
みたいなのをシェルの設定ファイルに書いて、/etc/hosts
に docker-toolbox
みたいなホストを追加しておいた。
ちなみに
Boot2Docker は HomeBrew で入れたものだったのだけれど、boot2docker upgrade
してしまって上書きされてて、brew uninstall
しただけだとバイナリを消せなかったので、以下のサイトを参考に手で消した。