はじめに
別環境(Windows 7 Professional 64bit)では特に問題なくDocker Quickstart Terminalを起動してdefaultマシンが作成されてDockerが使えたのに、自PC(Windows 10 Home 64bit)では、下記のエラーが発生して終了するしかない状態です。
「Looks like something went wrong... Press any key to continue...」
ちなみに以前は動いたのに久しぶりに起動したら動作しなかった方は、defaultマシンを削除して作り直せば動作するかも知れません。
2016/04/24 追記
DockerToolbox 1.11.0にバージョンアップしたが、まだ下記のエラーになります。
「Looks like something went wrong in step ´Finalize´」
2016/05/23 追記
コメントを頂き解決方法を追記しました。
環境
- Windows 10 Home 64bit
- DockerToolbox 1.10.3
- VirtualBox 5.0.16
現象①
DockerToolboxインストール時のチェックボックスは初期表示のまま(チェックボックス「Install VirtualBox with NDIS5 driver[default NDIS6]」はチェックオフ)で進めている。
Docker Quickstart Terminalを起動してdefaultマシンの生成途中でエラー表示はなく「Looks like something went wrong... Press any key to continue...」となり、再度起動すると「Looks like something went wrong... Press any key to continue...」の1行のみ表示される。
しかし、VirtualBoxにはdefaultインスタンスが出来ていて表示させるとboot2dockerのコンソール入力は動かせる状態である。
原因①
.docker\machine\machines\default\default\Logs\vbox.log
には下記のエラーがあった。
vminfo rtldrNativeLoad: dlopen('libdbus-1.so.3', RTLD_NOW | RTLD_LOCAL) failed: libdbus-1.so.3: cannot open shared object file: No such file or directory
VMMDev: Guest Log: 00:00:00.011240 vminfo Error: Unable to connect to system D-Bus (1/3): D-Bus not installed
※正常動作した別環境(Windows 7 Professional 64bit)のログに同じのが残っていたので、あまり関係ないかも。
現象②
現象①を解消させようと下記サイトにたどり着いた。
Windows10マシンにDocker Toolbox を入れて個人用の開発環境を作る
重要!
一番下のチェックボックス「Install VirtualBox with NDIS5 driver[default NDIS6]」にチェック入れるのを忘れずに!
VirtualBoxのdefaultインスタンスも停止して、すべてのファイル削除してDocker ToolboxとVirtualBoxをアンインストールして、再度インストール。
Docker Quickstart Terminalを起動してdefaultマシンの生成途中で下記のエラーが発生。
「VBoxManage.exe: error: Code E_FAIL (0x80004005) - Unspecified error (extended info not available)
VBoxManage.exe: error: Context: "LockMachine(a->session, LockType_Write)" at line 493 of file VBoxManageModifyVM.cpp
Looks like something went wrong... Press any key to continue...」
原因②
現象①との違いから原因は「Install VirtualBox with NDIS5 driver」と思われる。
その他
VirtualBoxを普通に再インストールすればいいと思いますが、ドライバーを指定してインストールすることも出来ます。
VirtualBox-5.0.16-105871-Win.exe -msiparams NETWORKTYPE=NDIS6
対応
下記サイトでDocker Quickstart Terminalを使わない方法として、Windows コマンドプロンプト(cmd.exe)やPowerShell で Docker を操作できることが分かった。
Docs » Docker Engine » インストール » Windows
docker-machineコマンドの使用
docker-machine create --driver virtualbox default2
docker-machine ssh default2
docker-machineを使いdefault2マシンを作成でき、またSSHでコンテナに接続できることが分かった。
あとはdockerコマンドでいろいろ試す(tensorflow導入等)ことが出来た。しかし、PowerShellでSSHを使用するとBackspaceキーが変な文字([J)が入ったり使い難い。
TeraTermを使用
SSHならTeraTermを使えば、Backspaceキーなどの制御は問題ないとのことで、TeraTermをダウンロードしてインストールした。
ホスト:default2のIPアドレス(192.168.99.101) ※可変
ポート:22
ユーザー/パスワード:docker/tcuser
これでコンテナに接続できたけど、あまりいい方法に思えなかった。
Git Bashの使用
Docker Quickstart Terminalのコマンド入力時に付いている「MINGW64」という単語が気になっていた。MINGW64について調べていくと下記サイトを見つける。
Mingw-w64/MSYS2 を入れなくても Git for Windows で間に合うみたい
DockerToolboxインストール時に「Git for Windows」のチェックボックスがあったのを思い出し、Gitフォルダから「Git Bash」を見つけた。
Git BashからSSHでdefault2に接続でき、Backspaceキーなどの制御は問題ないとのことが分かった。
docker-machine ssh default2
最終対応
いろいろ分かってきたので、関連するすべてのファイルを削除してDocker ToolboxとVirtualBoxをアンインストールして、再度インストールし直した。
現象①なら、Docker Quickstart TerminalはエラーだがVirtualBoxにはdefaultインスタンスが出来ているので、Docker Quickstart Terminalの代わりにGit Bashを使用した。
docker-machine ssh default
但し、この方法ではKitematic (Alpha)ツールとの連動は出来なくなる。
最後に
残念ながら、Docker Quickstart Terminalのエラーは解決出来なかった。バージョンアップに期待する。
貴重な土日の休日をこの不具合対応で潰してしまった、その分dockerについてはいろいろ学ぶことが出来たので良しとしよう。
解決方法(追記 2016/05/23)
sato1043さんからコメントを頂き、解決方法が分かりました。
それでも根本原因は分かっていないんですけどね(^-^;
C:\Program Files\Docker Toolbox\start.sh を管理者権限のエディター等で開いて、63行目あたりにある「clear」にコメント記号の「#」を付けて保存します。
STEP="Finalize"
#clear
cat << EOF
これで、Docker ToolBoxを起動し直します。