在行業內,VisualBox、VMware、Hyper-V衝突也不是什麼祕密了html
我在公司的電腦上先安裝了Docker,並在安裝Docker以前在BIOS中開啓了虛擬化支持,因此在啓動Docker時沒有任何問題。react
查看Windows功能,其中Hyper-V已經徹底安裝了android
接下來,由於須要開發React Native應用,安裝了Nodejs後,且爲了調試方便安裝了Android Studio,(React Native開發環境配置能夠參考https://reactnative.cn/docs/0.50/getting-started.html#content) 但在運行項目時,會出現如下錯誤git
如下的錯誤意思是,Android Studio與Hyper-V產生了衝突,須要運行命令將Hyper-V功能關閉github
好,既然Android Studio給出了提示,那麼我就須要運行以上提示給出的命令 docker
使用管理員權限打開一個命令行窗口,運行給出的命令windows
#是否是必定要在C:\Windows\system32>目錄運行命令不是太清楚,但我運行成功了
bcdedit /set hypervisorlaunchtype off
接着Android Studio又給出了另外一個錯誤提示,仍是須要先將Hyper-V先關掉才能夠。android-studio
由於現時Docker暫時不須要用到,因此先暫時關閉測試
將Android Studio的錯誤提示,點擊OK關閉錯誤提示。網站
將Android Studio的項目關閉再從新打開,依然看到Hyper-V的錯誤信息,依然不可運行,緣由是我運行了命令後,並無重啓
當我重啓電腦後,再嘗試運行,確實已經沒有了提示,項目已經正常運行
這時就有一個問題了,我已經成功運行了React Native,或者說Android Studio,那麼是否是能夠同時運行Docker?
很抱歉,個人機器暫時不行!彷佛有一些人有了解決方案,https://stackoverflow.com/questions/43134006/how-can-i-run-both-docker-and-android-studio-emulator-on-windows
或者咱們能夠微軟的Android模擬器,https://www.visualstudio.com/zh-hans/vs/msft-android-emulator/來解決這個問題。
簡單來講,就是Docker須要使用到Hyper-V,而Android Studio是使用HAXM(硬件加速執行管理器),而HAXM與Hyper-V使用相同的虛擬化擴展,這就意味着,它們之間是衝突的,且不能同時運行兩個技術,
且電腦中只能運行其中一個技術。
2018-08-01 更新
參考了一些網上的說法,彷佛Docker與Android Studio是沒辦法在同一個電腦上安裝的,可是找到一個折中的方法,就是安裝Docker Toolbox
Docker Toolbox便是在外面安裝了一個虛擬機給Docker使用,並且Docker Toolbox不須要使用到Hyper-V
Docker Toolbox地址:https://docs.docker.com/toolbox/toolbox_install_windows/
安裝完成後,會在網站生成三個圖標
打開Docker Quickstart Terminal圖標,須要下載一個boot2docker的鏡像,另外須要分配IP地址等,完成後,即會出現一個鯨魚的圖標
若是下載失敗,地址爲https://github.com/boot2docker/boot2docker/releases,能夠手動下載後放入至文件夾 C:\Users\chenwes(用戶名)\.docker\machine\cache
最後放一個,同時運行Docker與Android Studio的圖片
2019-02-25更新
查看到原有問答,已經解決了該問題
只須要將Windows功能中的Windows Hypervisor Platform勾選便可,但效果如何,我測試仍是行不通的
2019-05-06更新
查看到另外一個Google的解答
https://android-developers.googleblog.com/2018/07/android-emulator-amd-processor-hyper-v.html
也有微軟給出的方案
https://devblogs.microsoft.com/visualstudio/hyper-v-android-emulator-support/