
Ако радите у развоју, знате да је подешавање Линукс окружења на Виндоусу увек било помало компликовано или зависно од спољних алата који понекад могу бити превелики. Па, Мајкрософт је направио револуцију са WSL контејнерима , функцијом која нам омогућава да управљамо Линукс сликама и контејнерима изворно, без потребе да пролазимо кроз све што нуди Докер Десктоп или његове компликоване пословне лиценце.
Овај алат није једноставно ажурирање, већ промена парадигме у начину на који Windows рукује виртуелизацијом. Интеграцијом могућности покретања контејнера директно у Windows подсистем за Linux , циљ је стварање много глађег тока рада, елиминисање непотребних слојева и омогућавање програмерима да се фокусирају на писање кода без мучења са конфигурацијом оперативног система.
Шта су тачно WSL контејнери?
Једноставно речено, ово је нова WSL могућност која вам омогућава да креирате и покрећете Linux контејнере без потребе за спољним демоном. У њеном срцу је wslc.exe , интерфејс командне линије дизајниран да буде интуитиван, посебно ако сте већ упознати са Докером, јер су команде веома сличне. У ствари, да би се избегла било каква забуна, Мајкрософт је укључио алиас под називом container.exe.
Али није све у конзоли. Такође су објавили WSL API за контејнере доступан преко NuGet пакета. Ово је чисто злато за оне који развијају нативне Windows апликације (користећи C#, C++ или C) и желе да њихов програм интерно управља Linux контејнерима, обрађујући улаз/излаз (stdin/stdout), мрежно монтирање или чак директан приступ GPU-у за AI задатке помоћу PyTorch-а.
Кључне разлике у односу на Docker Desktop
Многи ће се питати да ли ово замењује Docker Desktop. Кратак одговор је да, у многим случајевима, да. Док Docker обично користи једну, дељену Linux виртуелну машину за све, WSL контејнери покрећу независне Hyper-V микро-VM-ове за сваки контејнер. То значи да сваки процес има сопствени буџет за меморију и складиштење, спречавајући један контејнер да „шпијунира“ други и побољшавајући безбедност.
Још једна кључна ствар је цена. Docker Desktop захтева плаћање за велике компаније, док су WSL контејнери укључени у Windows 11 без додатних трошкова. Међутим, постоји важан детаљ: потребан вам је Windows 11 Pro, Enterprise или Education , јер Home верзија не подржава Hyper-V изолацију неопходну да би све ово функционисало.
Како га покренути и покренути корак по корак
Ако желите да почнете са експериментисањем, прво што треба да урадите је да се уверите да имате WSL верзију 2.9.3 или новију. Пошто је још увек у прегледу, мораћете да отворите терминал као администратор и покренете команду `wsl --update --pre-release` . Након ажурирања, можете омогућити функцију покретањем `wsl --install-feature containers`.
Да бисте проверили да ли је све у реду, једноставно откуцајте wslc versionАко желите да покренете свој први контејнер без компликација, покушајте са wslc run --rm hello-worldВидећете да се слика аутоматски преузима и приказаће се поздрав, потврђујући да је систем оперативан. Одавде можете користити команде попут wslc контејнер ps да видим шта је живо или wslc слика ls да прегледате своје локалне слике.
Креирање сопствених слика и оптимизација тока посла
Ако желите да ово подигнете на виши ниво, идеално решење је да користите Visual Studio Code са WSL екстензијом. Да бисте креирали сопствену слику, потребна вам је датотека под називом Containerfile (веома слична Dockerfile-у) и да консултујете добре књиге о програмирању како бисте структурирали своју апликацију. На пример, ако правите Django апликацију, дефинисали бисте Python слику, копирали захтеве и изложили порт 8000.
Процес компилације је једноставан: користите wslc build -t име-ваше-апликације . а затим га покренете са wslc run -d -p 8000:8000 --name mi-app nombre-de-tu-appНајмоћнија ствар је што ово можете интегрисати у MSBuild или CMake, чинећи креирање контејнера делом процеса изградње вашег пројекта.
Перформансе, умрежавање и складиштење
Мајкрософт није само загребао површину. Имплементирали су virtiofs као подразумевани фајл систем, што значајно убрзава пренос података између Windows-а и Linux-а, елиминишући то досадно уско грло спорих монтирања. Штавише, постоји експериментални мрежни режим под називом consomme , који је благодет за оне који раде у корпоративним окружењима, јер решава типичне сукобе са VPN-овима предузећа интелигентнијим усмеравањем саобраћаја.
Што се тиче управљања ресурсима, систем је агресивнији у ослобађању меморије хосту. Пошто су то лагане виртуелне машине, када зауставите контејнер, меморија се брже опоравља него у монолитном моделу. Да бисте диск одржали чистим, не заборавите да користите wslc container prune y wslc image prune да обришете оно што више не користите.
Ова технологија представља значајан корак напред интегришући контејнеризацију директно у језгро Windows 11, омогућавајући програмерима да елиминишу софтвер трећих страна и оптимизују перформансе путем Hyper-V изолације и система virtiofs. Доласком wslc.exe CLI и VS Code компатибилности, успостављено је робусно, бесплатно и ефикасно окружење које поједностављује покретање Linux радних оптерећења, иако је потребно професионално издање Windows-а да би се у потпуности искористиле његове могућности.






