ไม่พบ Ubuntu WSL พร้อมนักเทียบท่า
$ docker
ไม่พบคำสั่งใน distro WSL 1 นี้ เราขอแนะนำให้แปลง distro นี้เป็น WSL 2 และเปิดใช้งานการรวม WSL ในการตั้งค่า Docker Desktop
ดู https://docs.docker.com/docker-for-windows/wsl/ เพื่อดูรายละเอียด
ไม่สามารถเปลี่ยนเป็น WSL2 และไม่สามารถติดตั้งนักเทียบท่าได้:

คำตอบ
สมมติว่าคุณมี wsl 2 ในระบบของคุณแล้วให้เรียกใช้ powershell ในฐานะผู้ดูแลระบบ:
รันwsl --list --verbose
ซึ่งจะให้รายการกระบวนการทำงาน wsl ของคุณ:
> wsl --list --verbose
NAME STATE VERSION
Ubuntu-20.04 Running 1
จากนั้นเปลี่ยนเป็น wsl --set-version <your proc> 2
:
> wsl --set-version Ubuntu-20.04 2
Conversion in progress, this may take a few minutes...
For information on key differences with WSL 2 please visit https://aka.ms/wsl2
Conversion complete.
คุณต้องไปที่การตั้งค่าเดสก์ท็อปของนักเทียบท่าและเปิดใช้งานการรวมกับ distro ของคุณใน "Resources -> WSL Integration"

ตามที่ Taylor เขียนไว้ในความคิดเห็นของเขาคุณต้องเชื่อมต่อจาก WSL ไปยัง Docker desktop
ในภาพที่คุณแนบมามีกล่องexpose daemon on ...
กาเครื่องหมายเลือกช่องนี้
ตอนนี้คุณต้องใช้ docker cli แล้วคุณสามารถติดตั้ง Linux vm จากนั้นติดตั้ง docker ใน Linux vm ที่คุณเพิ่งติดตั้ง
จากนั้นเรียกใช้which docker
และคัดลอกไฟล์นี้ไปยังคอมพิวเตอร์ที่ใช้ Windows ของคุณ
คัดลอกนักเทียบท่าที่ปฏิบัติการได้ลง/usr/local/bin
ใน WSL ของคุณ
ตอนนี้เรียกใช้สิ่งต่อไปนี้ใน WSL
echo "export DOCKER_HOST=tcp://localhost:2375" >> ~/.bashrc
. ~/.bashrc
สิ่งนี้ใช้ได้กับฉันใน WSL 1
นี่คือคำแนะนำที่ฉันพบในกระบวนการทั้งหมด
ฉันทำตามขั้นตอนเหล่านี้: https://docs.microsoft.com/en-us/windows/wsl/install-win10
นอกจากนี้สำหรับนักเทียบท่าในอูบุนตูฉันเปิดใช้งานในแหล่งข้อมูลนักเทียบท่าเป็นขั้นตอนสุดท้าย การตั้งค่า> ทรัพยากร> การรวม WSL จาก:https://docs.docker.com/docker-for-windows/wsl/