Windows için Docker hatası: “BIOS'ta donanım destekli sanallaştırma ve veri yürütme koruması etkinleştirilmelidir”


151

Docker'ı yükledim ve GUI'yi çalıştırdığımda bu hatayı alıyorum:

Donanım destekli sanallaştırma ve veri yürütme koruması BIOS'ta etkinleştirilmelidir

Docker komut satırından bir cazibe gibi çalıştığı için bir hata gibi görünüyor, ancak bunun neden olduğuna dair bir ipucu olup olmadığını merak ediyorum?

Sormadan önce, evet, BIOS'ta sanallaştırmayı etkinleştirdim ve Intel İşlemci Tanımlama Yardımcı Programı etkinleştirildiğini onaylıyor. Docker, docker-machine ve docker-compose komut satırından tüm işler, Virtualbox çalışır, Docker bir Debian veya Ubuntu VM'den çalışır.

GUI hakkında sadece bu garip bir sorun var.

Benim özellikleri:

  • Windows 10 Pro x64 Yıldönümü Sürümü
  • Intel core i5-6300HQ @ 2.30GHz

Yanıtlar:


340

Açıklanan özellikler etkinse sorun devre dışı bırakılmış Hyper-V veya Hipervizör aracısı çalışmıyor

ÇÖZÜM A (Hyper-V tamamen devre dışı bırakılmışsa veya takılı değilse)

  1. PowerShell'i yönetici olarak açın ve

  2. Hyper-V'yi ile etkinleştir

    dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All

ÇÖZÜM B (Hyper-V özelliği zaten etkinse ancak çalışmıyorsa)

İle Hipervizörü Etkinleştir

bcdedit /set hypervisorlaunchtype auto

Şimdi sistemi yeniden başlatın ve tekrar deneyin.

ÇÖZÜM C

Sorun devam ederse, muhtemelen sisteminizdeki Hyper-V bozuktur, bu nedenle

  1. Denetim Masası -> [Programlar] -> [Windows Özellikleri] 'ne gidin ve Hyper-V ile ilgili tüm bileşenlerin işaretini tamamen kaldırın. Sistemi yeniden başlatın.

  2. Hyper-V'yi tekrar etkinleştirin. Tekrar başlat.

NOT 1 :

Hyper-V'nin önkoşul olarak donanım sanallaştırması gerekiyor. PC'nizin desteklediğinden emin olun, evet ise ve hala çalışmıyorsa BIOS'unuzun doğru yapılandırılmamış olması ve bu özellik devre dışı bırakılması olasılığı vardır. Bu durumda, kontrol edin, etkinleştirin ve tekrar deneyin. Sanallaştırma özellikleri, kullanılan platforma göre farklı adlar altında raporlanabilir (örneğin, sanallaştırma etiketini açıkça kullanan herhangi bir seçenek görmüyorsanız, AMD'de Intel'de VT-x özellik durumunda SVM özellik durumunu kontrol etmeniz gerekir ).

NOT 2:

Hyper-V olabilir sadece bazı versiyon ile örn kurulabilir:

Windows 10 Enterprise; Windows 10 Professional; Windows 10 Eğitim.

Hyper-V daha ucuz veya mobil Windows sürümlerine yüklenemez , örneğin:

Windows 10 Home; Windows 10 Mobile; Windows 10 Mobile Enterprise.


3
@Julien unistall ve Hyper-V'yi yeniden kurmaya çalışın düzenlemeye bakın
Silverstorm

5
Başka bir kişinin benzer bir sorunu olması durumunda, Windows'ta Ubuntu'ya (Hyper-V kullanan) Bash yükledim. Kaldırdıktan ve bu yanıttaki adımları izledikten sonra Docker benim için çalıştı!
Kyle Challis

9
MacBook Pro'da Bootcamp'ta Windows 10 kullanıyorum. Ben de aynı problemi yaşadım. İlk önce denedim dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /Allama bcdedit /set hypervisorlaunchtype autoçözmedim , bu yüzden denedim ve Docker şimdi benim için koşuyor.
Johnny Oshika

1
Benim durumumdaki sorun bu değildi, BIOS'ta virtüalizasyonun devre dışı bırakılmış olmasıydı. BIOS'taki güvenlik sekmesinde sanallaştırma özelliğini etkinleştirmem gerekiyordu, bu da docker'ın hemen ardından çalışmasına neden oldu.
shahar_m

5
Çözüm B, SSD'mi Samsung SSD Geçiş Aracı üzerinden yükselttikten / değiştirdikten sonra benim için çalıştı.
plocks

19

Aşağıda benim için çalışan bir çözüm , lütfen aşağıdaki adımları izleyin

  1. PowerShell'i yönetici olarak veya CMD istemini yönetici olarak açın

  2. PowerShell'de bu komutu çalıştırın-> bcdedit /set hypervisorlaunchtype auto

  3. Şimdi sistemi yeniden başlatın ve tekrar deneyin.

şerefe.


4
Intel HAXM'i kaldırmadan benim için çalıştı, ancak şimdi vmware artık çalışmıyor :(
realtebo

11

Intel HAXM ve VirtualBox'ı kaldırdım, Docker şimdi çalışıyor


12
Android Geliştirme için HAXM yükledim ve HyperV'yi devre dışı bırakmak zorunda kaldım. Kaldırıldığında Windows için Docker geri yüklendi. Şimdi kimse bana Android Emulator ve Docker'ın bir arada var olmasını nasıl söyleyebilir?
Dieter Menne



3

Benim için tek yapmam gereken VMware'i kaldırmaktı.

Docker şimdi çalışıyor


1

Hyper-V'yi manuel olarak etkinleştirmeyi ve potansiyel olarak bir Hyper-V VM'yi manuel olarak oluşturmayı ve çalıştırmayı deneyebilir misiniz? Detaylar:


3
Benim için Hyper-V etkinleştirildiğinde ve BIOS yapılandırıldığında bile çalışmadı; Hala bu hatayı alıyordum. Windows'u yeniden başlatmak Hyper-V + 'yı devre dışı bırakmak ve ardından tekrar etkinleştirmek sorunu benim için çözdü.
Tadej

1

Benim durumumda hyper-v'yi kaldırmak, pc'yi yeniden başlatmak ve docker'ı tekrar çalıştırmak zorunda kaldım.


1

Bunu PowerShell'de deneyin (yönetici etkin):

Enable-WindowsOptionalFeature –Online -FeatureName Microsoft-Hyper-V –All -NoRestart

Bu işlem HyperVisor'u yönetim araçları olmadan kuracak ve bundan sonra Docker'ı çalıştırabilirsiniz.


1

Yukarıda birçok öneri denedim ama docker donanım destekli sanallaştırma hatası hakkında şikayet ediyor. Sanallaştırma BIOS'ta etkinleştirilir ve ayrıca Hyper-V kurulur ve etkinleştirilir. Birkaç deneme ve hatadan sonra, sonunda coreinfo aracını indirdim ve Hipervizörün aslında etkin olmadığını öğrendim. ISE'nin (64 bit) yönetici olarak kullanılması ve B Çözümünün üstünden komut çalıştırıp Hypervisor'u başarıyla etkinleştirir (coreinfo -v üzerinden tekrar kontrol edilir). Yeniden başlattıktan sonra, docker artık başarıyla çalışıyor.


1

Bu adımları deneyin

  1. Bu komutu powershell'de çalıştırın ---> bcdedit / set hypervisorlaunchtype auto
  2. Bilgisayarınızı yeniden başlatın
  3. Şimdi cmd satırında docker --version'u deneyin


0

Ben de vagrant kullanıyorum. Görünüşe göre bir seferde sadece 1 şey kullanabilirim. Vagrant / virtualBox yazılımını kaldırmak, docker'ı çalıştırmamı sağladı.



0

@Silverstorm

BIOS'umda Hyperv yüklü ve sanallaştırma etkinleştirildi.

Ama ÇÖZÜM A benim için çalışmadı.

Ancak, ÇÖZÜM B bir cazibe gibi çalıştı.

ÇÖZÜM B (Hyper-V özelliği zaten etkinse ancak çalışmıyorsa)

İle Hipervizörü Etkinleştir

bcdedit / set hypervisorlaunchtype auto Şimdi sistemi yeniden başlatın ve tekrar deneyin.


0

Orijinal cevabın yanı sıra aşağıdakileri yaptım:

  • Windows Özelliklerinde Hyper-V'yi Devre Dışı Bırakma
  • BIOS'ta sanallaştırmayı kapatma ve açma
  • Windows'da tekrar oturum açın, Hyper-V'yi etkinleştirin. Hyper-V için güncellemeler olduğu ve güncellemeyi yapmam istendi. İstendiğinde yeniden başlatın.
  • İşe yaradı!

0

BIOS seçeneği ile her şey yolundaysa, tüm HyperV özelliklerini devre dışı bırakmaya ve etkinleştirmeye zorladım ve bu sorunumu çözdü - cmd Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All --restart Enable-WindowsOptionalFeature -Online -FeatureName Microsoft- Hyper-V –Tüm


0

Benim durumumda BIOS ayarında sanallaştırmayı etkinleştirmem gerekiyordu.

  1. PC'yi yeniden başlat
  2. 'Yeniden başlat' ekranındayken şu tuşlardan birine basın ve bios ayarlarını pencerelere girersiniz: esc, f1, f2, f3, f4, f8 veya sil
  3. Intel tabanlı sistemler için:
    • f7 tuşuna basın (gelişmiş mod)
    • ileri git
    • cpa yapılandırması
    • sanallaştırmayı etkinleştir

Ve yukarıdaki tüm adımlardan sonra, nihayet işe yarar :-)


0

Benim durumumda yukarıda belirtilen tüm çözümleri kullanmama rağmen benim için hiçbir şey işe yaramadı. Bu yüzden docker'ı kaldırmaya ve tekrar kurmaya karar verdim.

Şimdi süreçte, Use Windows containers instead of Linux containers (this can be changed after installation)önceki kurulumumu kontrol etmediğimi fark ettim ve bu yüzden yukarıdaki sorunu aldım ve çözümler hala çözmedi. Bu nedenle, masaüstü docker'ı çalıştırmadan veya kaldırmadan önce kontrol etmeyi unutmayın ve bu seçeneği işaretleyerek tekrar kurun.

Docker Kurulum Süreci

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.