- Implementimi i kontejnerëve nativë duke përdorur wslc.exe për të zvogëluar mbingarkesën e sistemit.
- Optimizimi i performancës duke përdorur backend-in e WSL 2 krahasuar me versionet e mëparshme.
- Integrim i përsosur me Visual Studio Code dhe Dev Containers për të përmirësuar rrjedhën e punës.
- Analiza e kërkesave të licencës dhe versioneve të Windows të nevojshme për secilën metodë.
Nëse jeni një zhvillues që punon në Windows, ndoshta jeni përballur me dilemën e vjetër të dëshirës për fuqinë e Linux pa pasur nevojë të formatoni PC-në tuaj ose të përballeni me makina virtuale që zënë të gjithë RAM-in tuaj. Për fat të mirë, ekosistemi ka evoluar jashtëzakonisht shumë dhe tani kemi mundësi që e bëjnë vendosjen e kontejnerëve Docker në WSL shumë të lehtë, duke na lejuar të kemi më të mirën e të dy botëve në një makinë të vetme.
Gjërat kanë ndryshuar shumë kohët e fundit, duke kaluar nga konfigurime të vështira në zgjidhje pothuajse amtare. Nëse po kërkoni një mjet profesional me një ndërfaqe grafike ose preferoni lehtësinë e një CLI të integruar direkt në sistem, ka rrugë të qarta për të konfiguruar mjedisin tuaj të zhvillimit pa pasur nevojë që kompjuteri juaj të kërkojë mëshirë për shkak të mungesës së memories.
Paradigma e re: Kontejnerë nativë me wslc.exe

Microsoft ka bërë një veprim të guximshëm duke publikuar një veçori paraprake publike që u lejon përdoruesve të ekzekutojnë kontejnerët Linux në mënyrë native. Ylli i shfaqjes është wslc.exe, një ndërfaqe e linjës së komandës që imiton komandat e njohura të Docker, por pa kërkuar Docker Desktop. Ajo që është më interesante është se nuk përdor një shpërndarje standarde WSL; në vend të kësaj, ai lançon mikro-VM të lehta Hyper-V për secilin kontejner, duke i izoluar ndjeshëm proceset dhe duke përmirësuar sigurinë.
Për të filluar përdorimin e këtij mjeti, duhet të keni Windows 11 (mundësisht versionin 26100 ose më të ri) dhe Përditësoni WSL në versionin paraprak duke përdorur komandën wsl --update --pre-releasePasi të keni bërë këtë, thjesht ekzekutoni wsl --install-feature containers për të pasur gjithçka gati. Për të kontrolluar që nuk ka gabime, mund të hapni një kontejner të shpejtë me wslc run --rm hello-world Dhe nëse e shihni mesazhin përshëndetës, kjo do të thotë se Mjedisi juaj është funksional..
Le të fillojmë: Krijimi i imazhit tuaj
Kur doni të kaloni nga shembujt bazë në diçka reale, zgjidhja ideale është të përdorni VS Code me zgjerimin e tij WSL. Imagjinoni që keni një projekt Django; thjesht duhet të krijoni një skedar të quajtur Containerfile në rrënjë ku përcaktoni imazhin bazë (si Python 3), kopjoni kërkesat dhe instaloni varësitë. Pastaj, përdorni komandën wslc build -t nombre-de-tu-app . para gjeneroni imazhin e personalizuar.
Për ta nisur, komanda kryesore është wslc run -d -p 8000:8000 nombre-de-tu-appKjo i lejon Windows-it të hyjë në portin e kontejnerit. Nëse doni të shihni se çfarë po ndodh brenda, mund të përdorni wslc container logs ose ekzekutoni komanda të brendshme me wslc execNëse vini re se disku po mbushet, mos harroni të përdorni kumbulla të thata në enë wslc për të fshirë atë që nuk e përdorni më.
Alternativa klasike: Docker Desktop dhe WSL 2

Edhe pse zgjidhjet native tingëllojnë shkëlqyeshëm, Docker Desktop mbetet standardi për shkak të pjekurisë dhe ndërfaqes vizuale të tij. Çelësi këtu është të përdorni Sfondi i WSL 2që është pafundësisht më i shpejtë se versioni 1 falë përfshirjes së një kerneli të vërtetë Linux dhe një sistemi skedarësh ext4 vendas. Kjo përfaqëson një përmirësim masiv në shpejtësia e hyrjes dhe daljes së skedarëveduke bërë operacione të tilla si npm install o git clone fluturoj.
Nëse keni një instalim më të vjetër, gjëja më e mirë që mund të bëni është një pastrim i plotë. Fshini dosjet e mbetura në AppData dhe të eliminojë çdo gjurmë të DOCKER_HOST në arkiv .bashrc Është e rëndësishme të shmangni gabimet tipike të lidhje me demonin DockerPasi të keni pastruar, instaloni versionin më të fundit të Docker Desktop dhe sigurohuni që opsioni të jetë i kontrolluar në cilësime. integrimi me shpërndarjen tuaj WSL.
Konfigurim manual për përdoruesit e përparuar
Disa përdorues preferojnë të mos përdorin Docker Desktop për shkak të problemeve me licencimin e korporatave ose konsumit të burimeve. Në këtë rast, motori Docker mund të instalohet direkt në Ubuntu brenda WSL. Kjo përfshin krijimin e një përdoruesi jo-root për të shmangur rreziqet e sigurisë dhe dhënien e tij. sudo privilegjet dhe ekzekutoni instalimin e docker.io y docker-compose nëpërmjet terminalit. Është një mënyrë më manuale, por ju jep një kontroll i plotë mbi demonin dhe burimet e sistemit.
Krahasimi dhe zgjedhja e rrugës

Zgjedhja midis wslc dhe Docker Desktop varet në thelb nga profili juaj. Nëse punoni në një kompani të madhe dhe dëshironi shmangni kostot e licencimitOse nëse ju nevojiten vetëm kontejnerë për zhvillim të shpejtë në VS Code, wslc është zgjedhja fituese. Për më tepër, integrimi me Kontejnerët e Zhvillimit të Kodit VS Është e thjeshtë: thjesht duhet të ndryshoni Docker Path në wslc në cilësimet JSON.
Nga ana tjetër, nëse mbështeteni te orkestruesit si Kubernetes ose Rancher Desktop , Docker Desktop mbetet thelbësor, pasi zgjidhja native e WSL nuk e mbulon ende atë shtresë orkestrimi. Gjithashtu, mos harroni se Windows 11 Pro ose Enterprise është një kërkesë e detyrueshme për përdorimin e veçorive të izolimit Hyper-V të nevojshme për wslc, pasi versioni Home nuk i mbështet këto veçori.
Të kesh një mjedis kontejnerësh të konfiguruar mirë në Windows transformon përvojën e zhvillimit, duke na lejuar të kalojmë nga një mjet analize të të dhënave në një server web dhe një bazë të dhënash pa e mbingarkuar sistemin kryesor operativ. Qoftë duke zgjedhur natyrën e lehtë të mikro-VM-ve të Microsoft-it apo qëndrueshmërinë e paketës Docker, çelësi është të shfrytëzojmë arkitekturën WSL 2 për të maksimizuar performancën dhe për të ruajtur fleksibilitetin në rrjedhën tonë të përditshme të punës.