Fix Docker: Hardware-Assisted Virtualization and Data Execution Protection
Why there is a hardware assisted virtualization and data execution protection must be enables in the BIOS error? The error happened usually indicate a compatibility problem, and you need to fix this to ensure a smooth operation.
Docker for Windows error: “Hardware assisted virtualization and data execution protection must be enabled in the BIOS”
Seems like a bug since Docker works like a charm from the command line, but I'm wondering if anyone has a clue about why this is happening? Before you ask, yes, I've enabled virtualization in the BIOS and the Intel Processor Identification Utility confirms that it's activated. Docker, docker-machine and docker-compose all work from the command line, Virtualbox works, running Docker from a Debian or Ubuntu VM works. There's just this weird issue about the GUI.
- Question from Stack Overflow
This error usually happens when the necessary BIOS settings for hardware-assisted virtualization and Data Execution Protection are disabled, or the CPU does not support hardware-assisted virtualization or DEP. Apart from these two main reasons, other reasons can lead to this error. When this error occurs we have to fix it in time, next will be the way to solve this error.
How to Enable Virtualization and Data Execution Protection in BIOS
Before you head into fixing the error, you need to know the key concepts: Hardware-Assisted Virtualization (HAV) and Data Execution Protection (DEP).
1. Hardware-Assisted Virtualization (HAV): Hardware-assisted virtualization is where CPU hardware provides support to improve the performance and efficiency of virtual machines (VMs).
2. Data Execution Protection (DEP): DEP prevents code from executing in areas of memory that are not suitable for code execution and is a safety feature.
※ Below is a step-by-step guide to solve the error:
Step 1. Click on Settings, and go to Apps > Programs and Features.
Step 2. Navigate to Turn Windows features on or off to ensure the Hyper-V is checked, if it’s checked, click OK.
Step 3. Open your PowerShell, and click Run as Administrator.
Step 4. Run the following command:
bcdedit / set hypervisorlanchtype auto
Then the screen will show this: The operation completed successfully.
Step 5. Restart your PC, and the error is fixed.
A Secure Way to Prevent Data from Loss
When the error happens, it indicates a configuration issue, but after fixing the error, you can run virtual machines (VMs) and containers efficiently. When it comes to the virtual environment, if you want to protect your data safely, you can choose to regularly back up all critical data, especially the data stored in Docker volumes or containers. Configure backup can ensure that potential downtime or configuration errors do not affect your data.
Here, AOMEI Cyber Backup can help you to do so. It’s a professional virtual machine backup solution and offers cloud storage to further enhance the reliability and accessibility of backup data.
- Free VMware & Hyper-V VMs protection.
- Agentless and automatic backup virtual machines.
- Fast VM recovery with minimal downtime.
Conclusion
When the Hardware-assisted virtualization and data execution protection must be enabled in the BIOS error occurs, indicating that Docker's dependency on virtualization technology is to be enabled for a specific CPU. Following the steps mentioned in this article to resolve the error can ensure that Docker runs smoothly and also ensure that the system is optimized for virtualization and application execution security.