Hyper-V sisteminde Vagrant ve Docker-for-Windows nasıl kullanılır?


12

O günlerde VM'leri çalıştırmak için VirtualBox (VB) ve Vagrant (V) kullanıyordum. Ben yüklü beri liman işçisi-pencereler için (DFW) ve çalıştırmak V, VB hakkında şikayet Hyper-V (HV) .

[user@localhost ~]$ vagrant up
Stderr: VBoxManage.exe: error: VT-x is not available (VERR_VMX_NO_VMX)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component
ConsoleWrap, interface IConsole

Her ne kadar bu bağlantıyı V HV desteklediğini belirtir, yukarıdaki hata mesajı contradictive olduğunu. VB neden HV ile uyumsuz görünüyor, V neden HV'yi desteklediğini ve V'yi tekrar kullanmak için HV'nin devre dışı bırakılması gerektiğini nasıl önlediğini söylüyor.

| Product    | Version |
|:-----------|--------:|
| Vagrant    |   2.0.1 |
| VirtualBox |   5.2.4 |
| Windows    |      10 | 

Tartışma

Hyper-V'yi açma ve kapatma önerisi zaman alıcı olduğu için tercih edilen çözüm değildir.

VB'yi değiştirerek V ve DfW'yi aynı sistemde çalıştırmak mümkünse, bu bir seçenek olabilir.

Yanıtlar:


9

Tarafından Onaylandı SO bu cevabı başvuran Microsoft TechNet Hyper-V kez bunun üstüne OS işlemcinin VT-x talimatları maske ve pencereler misafir gibi koşmak devreye girer.

Windows için Docker'ın çalışması için hyper-V'ye ihtiyacınız var, bu yüzden devre dışı bırakmak gerçekten bir seçenek değil.

Sanal kutunun Hyper-V üzerinde çalışmasının bir yolu yoktur ve bu oldukça normaldir, bir hipervizör içinde bir hipervizör çalıştırmamalısınız, donanım erişimini düzenlemek için savaşacaklardır.

Bence en iyi geçici çözüm , sanal kutu makineleri yerine hyper-V sağlayıcısı ile vagrant'tan hyper-V sanal makinesi oluşturmaktır, böylece aynı oturumda VM veya kapsayıcı oluşturabilirsiniz.

Yan not, vagrant zaten bu konuda hyper-v sağlayıcı dokümantasyon sayfasında bir not var (yukarıda eklemek için bağlantı ararken bulunur):

Uyarı : Hyper-V'nin etkinleştirilmesi VirtualBox, VMware ve diğer sanallaştırma teknolojilerinin artık çalışmamasına neden olacaktır. Hyper-V etkinleştirilmeden Windows'u önyüklemek için bir önyükleme girişi oluşturmanın kolay bir yolu için bu blog yayınına bakın , eğer başka hipervizörlere ihtiyacınız olacak zamanlar olacak.


0

Vagrant'ın yanı sıra, 'Docker for Windows' yerine eski okul Legacy 'Docker Toolbox'ı da kullanabilirsiniz. Bu, Docker'ın inandığım bir Linux VM'de çalışmasından bu yana yavaş olacağı anlamına geliyor. https://docs.docker.com/toolbox/toolbox_install_windows/ Bunun dışında evet bilgisayarımı Docker için HyperV'e ihtiyacım olan her şeyi yeniden başlatıyorum veya vagrant istediğimde kaldırıyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.