Galat Docker untuk Windows: "Virtualisasi berbantuan perangkat keras dan perlindungan eksekusi data harus diaktifkan di BIOS"

151

Saya telah menginstal Docker dan saya mendapatkan kesalahan ini ketika saya menjalankan GUI:

Virtualisasi berbantuan perangkat keras dan perlindungan eksekusi data harus diaktifkan di BIOS

Sepertinya bug karena Docker bekerja seperti pesona dari baris perintah, tapi saya ingin tahu apakah ada yang tahu mengapa ini terjadi?

Sebelum Anda bertanya, ya, saya telah mengaktifkan virtualisasi di BIOS dan Utilitas Identifikasi Prosesor Intel mengkonfirmasi bahwa itu diaktifkan. Docker, docker-machine, dan docker-menyusun semua pekerjaan dari baris perintah, Virtualbox berfungsi, menjalankan Docker dari karya Debian atau Ubuntu VM.

Hanya ada masalah aneh tentang GUI ini.

Spesifikasi saya:

  • Edisi Ulang Tahun Windows 10 Pro x64
  • Intel core i5-6300HQ @ 2.30GHz
Julien
sumber

Jawaban:

340

Jika fitur yang dijelaskan diaktifkan, masalahnya adalah dengan Hyper-V yang dinonaktifkan atau agen Hypervisor tidak berjalan

SOLUSI A (Jika Hyper-V benar-benar dinonaktifkan atau tidak diinstal)

  1. Buka PowerShell sebagai administrator dan

  2. Aktifkan Hyper-V dengan

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

SOLUSI B (Jika fitur Hyper-V sudah diaktifkan tetapi tidak berfungsi)

Aktifkan Hypervisor dengan

bcdedit /set hypervisorlaunchtype auto

Sekarang restart sistem dan coba lagi.

SOLUSI C

Jika masalah tetap terjadi, mungkin Hyper-V pada sistem Anda rusak, jadi

  1. Buka Control Panel -> [Program] -> [Fitur Windows] dan hapus centang sama sekali semua komponen terkait Hyper-V. Mulai ulang sistem.

  2. Aktifkan kembali Hyper-V. Mengulang kembali.

CATATAN 1 :

Hyper-V membutuhkan virtualisasi perangkat keras sebagai prasyarat. Pastikan PC Anda mendukungnya, jika ya dan masih tidak akan berfungsi, ada kemungkinan BIOS Anda tidak dikonfigurasi dengan benar dan fitur ini dinonaktifkan. Dalam hal ini, periksa, aktifkan, dan coba lagi. Fitur virtualisasi dapat dilaporkan dengan nama yang berbeda sesuai platform yang digunakan (misalnya jika Anda tidak melihat opsi yang menggunakan label virtualisasi secara eksplisit, pada AMD Anda harus memeriksa status fitur SVM , pada Intel the feature feature VT-x ).

CATATAN 2:

Hyper-V dapat diinstal hanya dengan beberapa versi misalnya:

Windows 10 Enterprise; Windows 10 Professional; Windows 10 Education.

Hyper-V tidak dapat diinstal pada versi Windows yang lebih murah atau seluler misalnya:

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

Silverstorm
sumber
3
@Julien mencoba untuk membatalkan dan menginstal ulang Hyper-V lihat hasil edit
Silverstorm
5
Seandainya ada orang lain yang memiliki masalah serupa, saya baru saja menginstal Bash di Ubuntu pada Windows (yang menggunakan Hyper-V). Setelah saya mencopotnya dan kemudian mengikuti langkah-langkah dalam jawaban ini, Docker bekerja untuk saya!
Kyle Challis
9
Saya menjalankan Windows 10 di Bootcamp di MacBook Pro. Saya memiliki masalah yang sama. Saya pertama kali mencoba dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /Alltetapi tampaknya tidak menyelesaikannya, jadi saya mencoba bcdedit /set hypervisorlaunchtype autodan Docker sekarang berjalan untuk saya.
Johnny Oshika
1
Ini bukan masalah dalam kasus saya, itu adalah fakta bahwa virtuallization dinonaktifkan di BIOS. Saya harus mengaktifkan fitur virtualisasi di tab keamanan di BIOS, yang menyebabkan buruh pelabuhan segera bekerja setelahnya.
shahar_m
5
Solusi B bekerja untuk saya setelah meningkatkan / mengganti SSD saya melalui Alat Migrasi SSD Samsung.
pasang
19

Di bawah ini adalah solusi yang berfungsi untuk saya, ikuti langkah-langkah ini

  1. Buka PowerShell sebagai administrator atau CMD meminta sebagai administrator

  2. Jalankan perintah ini di PowerShell-> bcdedit /set hypervisorlaunchtype auto

  3. Sekarang restart sistem dan coba lagi.

Bersulang.

Lavekush Agrawal
sumber
4
Bekerja untuk saya, tanpa mencopot pemasangan Intel HAXM, tetapi sekarang vmware tidak lagi berfungsi :(
realtebo
11

Saya menghapus Intel HAXM dan VirtualBox, Docker sekarang berjalan

Marc
sumber
12
Saya telah menginstal HAXM untuk Pengembangan Android, dan harus menonaktifkan HyperV. Menghapusnya dipulihkan Docker untuk Windows. Sekarang, kalau ada yang bisa memberi tahu saya bagaimana agar Android Emulator dan Docker dapat hidup berdampingan?
Dieter Menne
1
itwriting.com/blog/…
Dieter Menne
3

Bagi saya, yang harus saya lakukan adalah menghapus instalasi VMware.

Docker sekarang sedang berjalan

Yahya Hussein
sumber
1

Bisakah Anda mencoba mengaktifkan Hyper-V secara manual, dan berpotensi membuat dan menjalankan VM Hyper-V secara manual? Detail:

friism
sumber
3
Bagi saya itu tidak berfungsi bahkan ketika Hyper-V diaktifkan dan BIOS dikonfigurasi; Saya masih mendapatkan kesalahan itu. Menonaktifkan Hyper-V + me-restart Windows dan kemudian mengaktifkannya kembali memecahkan masalah bagi saya.
Tadej
1

Dalam kasus saya, saya harus menghapus hyper-v, me-restart pc, dan menjalankan docker lagi.

aph5
sumber
1

Coba ini di PowerShell (admin diaktifkan):

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

Ini akan menginstal HyperVisor tanpa alat manajemen, dan kemudian Anda dapat menjalankan Docker setelah ini.

H35 pagi
sumber
1

Saya telah mencoba banyak saran di atas tetapi buruh pelabuhan terus mengeluh tentang kesalahan virtualisasi berbantuan perangkat keras. Virtualisasi diaktifkan di BIOS, dan juga Hyper-V diinstal dan diaktifkan. Setelah mencoba beberapa kesalahan, saya akhirnya mengunduh alat coreinfo dan mengetahui bahwa Hypervisor sebenarnya tidak diaktifkan. Menggunakan ISE (64 bit) sebagai admin dan menjalankan perintah dari Solusi B di atas dan yang memungkinkan Hypervisor berhasil (diperiksa melalui coreinfo -v lagi). Setelah restart, buruh pelabuhan sekarang berjalan dengan sukses.

steven
sumber
1

Coba langkah-langkah ini

  1. Jalankan perintah ini di powershell ---> bcdedit / set hypervisorlaunchtype auto
  2. Nyalakan kembali PC Anda
  3. Sekarang coba docker --version dalam baris cmd
Vamshi Krishna
sumber
0

Masalah bagi saya terpecahkan ketika saya mencopot Cygwin.

Inez Van Laer
sumber
0

Saya juga menggunakan gelandangan. Tampaknya saya hanya dapat menggunakan 1 hal dalam satu waktu. Mencopot gelandangan / virtualBox memungkinkan saya untuk menjalankan buruh pelabuhan dan sebaliknya

MGreenfield
sumber
0

@ Silverstorm

Saya sudah menginstal Hyperv dan virtualisasi diaktifkan di BIOS saya.

Tapi SOLUSI A tidak berhasil untuk saya.

Namun, SOLUSI B bekerja seperti pesona.

SOLUSI B (Jika fitur Hyper-V sudah diaktifkan tetapi tidak berfungsi)

Aktifkan Hypervisor dengan

bcdedit / set hypervisorlaunchtype auto Sekarang restart sistem dan coba lagi.

Muntah
sumber
0

Selain jawaban asli, saya telah melakukan yang berikut:

  • Nonaktifkan Hyper-V di Fitur Windows
  • Mematikan dan menghidupkan virtualisasi di BIOS
  • Masuk kembali ke windows, aktifkan Hyper-V. Saya diminta ada pembaruan untuk Hyper-V dan saya melakukan pembaruan. Mulai ulang saat diminta.
  • Berhasil!
Peter Wen
sumber
0

Jika semuanya baik-baik saja dengan opsi BIOS, saya hanya terpaksa menonaktifkan dan mengaktifkan semua fitur HyperV dan ini menyelesaikan masalah saya - cmd Nonaktifkan-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All --mulai Aktifkan-WindowsOptionalFeature -Online -FiturName Microsoft- Hyper-V –All

Poli Hamza
sumber
0

Dalam kasus saya, saya harus mengaktifkan virtualisasi dalam pengaturan BIOS.

  1. Mulai ulang PC
  2. Saat Anda berada di layar 'restart' tekan salah satu dari tombol-tombol ini dan Anda memasukkan pengaturan bios di windows: esc, f1, f2, f3, f4, f8 atau hapus
  3. Untuk sistem berbasis intel:
    • tekan f7 (mode lanjutan)
    • pergi ke mahir
    • konfigurasi bpa
    • aktifkan virtualisasi

Dan setelah semua langkah di atas, akhirnya berhasil :-)

EdwinN1337
sumber
0

Dalam kasus saya meskipun saya menggunakan semua solusi yang disebutkan di atas tetapi tidak ada yang berhasil untuk saya. Jadi saya memutuskan untuk menghapus buruh pelabuhan dan menginstalnya lagi.

Sekarang dalam proses, saya perhatikan bahwa saya tidak memeriksa Use Windows containers instead of Linux containers (this can be changed after installation)instalasi saya sebelumnya, dan itulah mengapa saya mendapatkan masalah di atas dan solusi masih belum memperbaikinya. Jadi pastikan untuk memeriksanya sebelum Anda menjalankan desktop docker atau menghapus instalasinya dan menginstalnya kembali dengan memeriksa opsi ini.

Proses Pemasangan Docker

DINA TAKLIT
sumber