Docker與Android Studio的衝突問題

在行業內,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更新

查看到原有問答,已經解決了該問題

https://stackoverflow.com/questions/43134006/how-can-i-run-both-docker-and-android-studio-emulator-on-windows

只須要將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/

相關文章
相關標籤/搜索