Docker Desktop может запускать оба типа контейнеров. Чтобы это работало, компании Docker пришлось постараться. Здесь я нарисовал схему. У нас есть программа управления, которая запускается в среде Windows. Она подключается к двум бэкендам. Один находится на стороне Windows и управляет windows-конейнерами, другой расположен внутри WSL-виртуалок, в которых хранятся образы и запускаются контейнеры. Там на самом деле целый огород из вложенных виртуализаций, и поначалу это работало не очень устойчиво, но сейчас linux-контейнеры работают прилично.