- Pagpapatupad ng mga katutubong lalagyan gamit ang wslc.exe upang mabawasan ang overhead ng system.
- Pag-optimize ng performance gamit ang WSL 2 backend kumpara sa mga nakaraang bersyon.
- Walang putol na integrasyon sa Visual Studio Code at Dev Containers para mas mapabilis ang daloy ng trabaho.
- Pagsusuri ng mga kinakailangan sa lisensya at mga bersyon ng Windows na kinakailangan para sa bawat pamamaraan.
Kung ikaw ay isang developer na gumagamit ng Windows, malamang ay naharap mo na ang matagal nang problema ng pagnanais na masulit ang lakas ng Linux nang hindi kinakailangang i-format ang iyong PC o nahihirapan sa mga virtual machine na kumukuha ng lahat ng iyong RAM. Mabuti na lang at ang ecosystem ay lubos na umunlad, at ngayon ay mayroon na tayong mga opsyon na ginagawang madali ang pag-deploy ng mga Docker container sa WSL , na nagbibigay-daan sa atin na magkaroon ng pinakamahusay sa parehong mundo sa isang makina.
Malaki ang ipinagbago nitong mga nakaraang araw, mula sa masalimuot na mga configuration patungo sa halos mga katutubong solusyon. Naghahanap ka man ng propesyonal na tool na may graphical interface o mas gusto ang gaan ng isang CLI na direktang naka-integrate sa system, may mga malinaw na landas para i-set up ang iyong development environment nang hindi na kailangang humingi ng tawad ang iyong computer dahil sa kakulangan ng memorya.
Ang bagong paradigma: Mga katutubong lalagyan na may wslc.exe

Gumawa ng matapang na hakbang ang Microsoft sa pamamagitan ng paglabas ng isang pampublikong tampok na preview na nagbibigay-daan sa mga user na magpatakbo ng mga Linux container nang natively. Ang bida sa palabas ay ang wslc.exe, isang command-line interface na ginagaya ang mga pamilyar na utos ng Docker, ngunit hindi nangangailangan ng Docker Desktop. Ang pinaka-nakakaintriga ay hindi ito gumagamit ng isang karaniwang distribusyon ng WSL; sa halip, naglulunsad ito ng magaan na Hyper-V micro-VM para sa bawat container, na makabuluhang naghihiwalay sa mga proseso at nagpapabuti sa seguridad.
Para simulang gamitin ang tool na ito, kailangan mo ng Windows 11 (mas mainam kung build 26100 o mas bago) at I-update ang WSL sa bersyon ng preview gamit ang utos wsl --update --pre-releaseKapag tapos na ito, patakbuhin lang wsl --install-feature containers para maihanda ang lahat. Para masuri na walang mga error, maaari kang maglunsad ng isang mabilisang lalagyan gamit ang wslc run --rm hello-world At kung makita mo ang mensahe ng pagbati, ibig sabihin nito ay Ang iyong kapaligiran ay gumagana na..
Simulan na natin: Paglikha ng sarili mong imahe
Kapag gusto mong lumipat mula sa mga pangunahing halimbawa patungo sa isang bagay na totoo, ang mainam na solusyon ay ang paggamit ng VS Code kasama ang WSL extension nito. Isipin mong mayroon kang isang proyektong Django; kailangan mo lang gumawa ng isang file na tinatawag na File ng lalagyan sa ugat kung saan mo tinutukoy ang base image (tulad ng Python 3), kinokopya ang mga requirement, at ini-install ang mga dependency. Pagkatapos, gagamitin mo ang command wslc build -t nombre-de-tu-app . para bumuo ng pasadyang imahe.
Para simulan ito, ang utos na "key" ay wslc run -d -p 8000:8000 nombre-de-tu-appNagbibigay-daan ito sa Windows na ma-access ang port ng container. Kung gusto mong makita kung ano ang nangyayari sa loob, maaari mong gamitin ang wslc container logs o magsagawa ng mga panloob na utos gamit ang wslc execKung mapapansin mong napupuno na ang disk, huwag kalimutang gamitin prun para sa lalagyan ng wslc para burahin ang mga hindi mo na ginagamit.
Ang klasikong alternatibo: Docker Desktop at WSL 2

Bagama't maganda ang tunog ng mga katutubong solusyon, nananatiling pamantayan ang Docker Desktop dahil sa kahusayan at visual interface nito. Ang susi rito ay ang paggamit ng WSL 2 na backendna mas mabilis nang walang katapusan kaysa sa bersyon 1 dahil sa pagkakaroon ng totoong Linux kernel at isang katutubong ext4 file system. Ito ay kumakatawan sa isang napakalaking pagpapabuti sa bilis ng pag-input at pag-output ng filepaggawa ng mga operasyon tulad ng npm install o git clone lumipad.
Kung galing ka sa mas lumang instalasyon, ang pinakamagandang gawin ay ang masusing paglilinis. Burahin ang mga natitirang folder sa AppData at alisin ang anumang bakas ng DOCKER_HOST sa archive .bashrc Mahalagang maiwasan ang karaniwang pagkakamali ng koneksyon sa Docker daemonKapag malinis na, i-install ang pinakabagong bersyon ng Docker Desktop at siguraduhing naka-check ang opsyon sa mga setting. integrasyon sa iyong WSL distro.
Manu-manong pag-configure para sa mga advanced na user
Mas gusto ng ilang user na huwag gamitin ang Docker Desktop dahil sa mga isyu sa corporate licensing o pagkonsumo ng resource. Sa ganitong kaso, maaaring direktang i-install ang Docker engine sa Ubuntu sa loob ng WSL. Kabilang dito ang paglikha ng isang non-root user upang maiwasan ang mga panganib sa seguridad at pagbibigay nito. mga pribilehiyo ng sudo at patakbuhin ang pag-install ng docker.io y docker-compose sa pamamagitan ng terminal. Ito ay isang mas manu-manong paraan, ngunit binibigyan ka nito ng ganap na kontrol sa demonyo at mga mapagkukunan ng system.
Paghahambing at pagpili ng ruta

Ang pagpili sa pagitan ng wslc at Docker Desktop ay karaniwang nakadepende sa iyong profile. Kung nagtatrabaho ka sa isang malaking kumpanya at gusto mo maiwasan ang mga gastos sa paglilisensyaO kung kailangan mo lang ng mga container para sa mabilis na pag-develop sa VS Code, ang wslc ang panalong pagpipilian. Bukod pa rito, ang integrasyon sa Mga Lalagyan ng Pag-develop ng VS Code Simple lang: kailangan mo lang baguhin ang Docker Path sa wslc sa mga setting ng JSON.
Sa kabilang banda, kung aasa ka sa mga orchestrator tulad ng Kubernetes o Rancher Desktop , nananatiling mahalaga ang Docker Desktop, dahil hindi pa sakop ng native solution ng WSL ang orchestration layer na iyon. Tandaan din na ang Windows 11 Pro o Enterprise ay isang mandatoryong kinakailangan para sa paggamit ng mga feature ng Hyper-V isolation na kinakailangan para sa wslc, dahil hindi sinusuportahan ng Home version ang mga feature na ito.
Ang pagkakaroon ng maayos na na-configure na container environment sa Windows ay nagbabago sa karanasan sa pag-develop, na nagbibigay-daan sa atin na lumipat sa pagitan ng mga tool sa pagsusuri ng data, mga web server, at mga database nang hindi nakakaabala sa pangunahing operating system. Pinipili man natin ang magaan na katangian ng mga micro-VM ng Microsoft o ang katatagan ng Docker suite, ang susi ay ang paggamit ng arkitektura ng WSL 2 upang ma-maximize ang performance at mapanatili ang flexibility sa ating pang-araw-araw na workflow.