Docker problems with VT-d

I was having some problems getting Docker working on my Windows 10 laptop – every time it started, it complained that hardware virtualization was disabled or HyperV was not turned on.

  • I checked the BIOS – virtualization was enabled.
  • I checked the Windows features – HyperV was added.
  • I removed and re-added HyperV a few times to be sure (a slow process on each attempt)

Finally, I noticed that one of the screenshots in Step-By-Step: Enabling Hyper-V for use on Windows 10 also showed VT-d was disabled. I checked my BIOS. It had VT-d enabled. I disabled it, rebooted and lo-and-behold, Docker started up straight away !

This seems to suggest that VT-d is somehow incompatible with Docker – at least on my aging Lenovo X201. I don’t yet know if this is generally true or just depends on your hardware or the age of your BIOS. You can read more about VT-d at Understanding VT-d: Intel Virtualization Technology for Directed I/O to see what you are missing out on by turning this off.