Med WSL Containers kan du köra Linux-containrar från PowerShell med kommandot wslc, utan att installera Docker Desktop för grundflödet. Börja med att kontrollera WSL-versionen och köra hello-world. Ett kort meddelande visar om avbildningen går att hämta och containern startar.

Microsoft gjorde funktionen generellt tillgänglig den 29 september 2026. Dokumentationen kräver WSL 2.9.3 eller senare, men den stabila GA-utgåvan är 3.0.1. Versionsgränsen 2.9.3 betyder alltså inte att du bör välja en äldre förhandsversion. Hämta den aktuella stabila uppdateringen.

Guiden passar dig som vill prova containerkommandon eller en enkel utvecklingstjänst på Windows. Den bygger på Microsofts dokumentation och källkod, kontrollerade den 9 oktober 2026. Något fullständigt eget WSLc-test ingår inte i underlaget.

Vad behöver du innan du börjar?

  • Windows som kan köra aktuell WSL och WSL 2:s virtualisering. Microsofts förenklade WSL-installation gäller Windows 11 och Windows 10 version 2004 eller senare, build 19041 eller senare. Detta är installationskommandots Windows-gräns; kontrollera även att aktuell WSL kan installeras på just din dator.
  • WSL 2.9.3 eller senare. För vanlig användning rekommenderas den stabila utgåvan, för närvarande 3.0.1.
  • Virtualiseringsstöd och Virtual Machine Platform. WSL 2 behöver bland annat processorstöd för SLAT och aktiverad virtualisering. Ett versionsnummer ensamt bevisar inte att containrar kan starta.
  • Nätåtkomst till avbildningens register vid första hämtningen. Exemplen använder Docker Hubs officiella avbildningar hello-world, ubuntu och nginx.
  • Tillåtelse enligt datorns IT-policy. Installation kan kräva administratörsrättigheter och omstart. På en arbetsdator kan WSL eller tillåtna register styras centralt.

Windows Terminal och Visual Studio Code är valfria. Docker Desktop behövs inte för stegen nedan. Behåll däremot en befintlig Docker-installation tills du har kontrollerat vilka funktioner dina projekt behöver.

1. Kontrollera WSL och uppdatera vid behov

Öppna PowerShell och kör först den här kontrollen:

wsl --version

Läs raden för WSL-version. Blanda inte ihop den med Linux-kärnans version, Windows buildnummer eller PowerShell-versionen som visas i artikelbilden. WSL-paketets versionsnummer och en distributions läge, WSL 1 eller WSL 2, är också olika saker.

Har du en äldre WSL-installation, uppdatera den:

wsl --update

Följ eventuella instruktioner om administration eller omstart. Öppna sedan terminalen igen och kör wsl --version på nytt. Använd den vanliga stabila uppdateringen; guiden kräver inte --pre-release.

Om WSL inte är installerat: följ Microsofts installationsguide. Standardkommandot är wsl --install i PowerShell som administratör, följt av omstart. Det aktiverar nödvändiga funktioner och installerar normalt Ubuntu. Det ändrar datorns installation och är inget rent kontrollkommando.

2. Kontrollera att wslc finns

wslc version

Du ska få versionsinformation för WSLc-klienten. wslc.exe följer med WSL-paketet; installera inte någon okänd separat containerhanterare för att lösa ett saknat kommando. Microsoft tillhandahåller även aliaset container.exe, men här används wslc genomgående.

Att kommandot visar en version är första kontrollen. Nästa steg provar själva containerkörningen.

3. Kör din första container

wslc run --rm hello-world

Avbildningen hämtas om den inte redan finns lokalt. Microsofts handledning anger ett Hello-meddelande som förväntat resultat. Det bekräftar grundläggande hämtning och körning, inte att alla nätverks- eller utvecklingsfunktioner fungerar.

--rm tar bort containern som detta kommando skapar när den avslutas. Det rensar inte alla dina containrar. Den hämtade avbildningen kan finnas kvar för nästa körning.

Vill du se ett bestämt, kort meddelande använder Microsoft också följande Ubuntu-exempel:

wslc run --rm -it ubuntu:latest bash -c "echo Hello world from WSL container!"

Det förväntade meddelandet från kommandot är:

Hello world from WSL container!

Detta är det dokumenterade exemplets resultat, ingen återgiven egen testutskrift. -it kopplar terminalens inmatning och terminalfunktioner till containern. Kommandot ovan avslutas efter utskriften. Vid en interaktiv körning kan du använda Ctrl+C för att avbryta processen.

4. Frivilligt: prova en webbserver på din dator

Gör detta först när hello-world fungerar. Kontrollera att namnet tekniksvar-wslc-test inte redan används:

wslc container list --all

Om namnet finns, välj ett annat eget testnamn och använd det i alla följande kommandon. Starta sedan nginx:

wslc run -d --rm -p 127.0.0.1:8080:80 --name tekniksvar-wslc-test nginx

-d kör servern i bakgrunden. Port 8080 på Windows kopplas till port 80 i containern. Här anges 127.0.0.1 uttryckligen för åtkomst från den egna datorn. Microsofts handledning använder den kortare formen 8080:80; den anger ingen särskild lokal bindningsadress. Formen med IP-adress är verifierad i Microsofts porttester för WSL 3.0.1.

Öppna http://127.0.0.1:8080/ i webbläsaren. En startad standardinstallation av nginx ska visa sin välkomstsida. Du kan också kontrollera HTTP-svaret i PowerShell:

curl.exe http://127.0.0.1:8080/

curl.exe anger Windows-programmet uttryckligen och undviker förväxling med ett PowerShell-alias. Använd inte portvidarebefordran eller externa bindningsadresser för det här testet.

Kontrollera testcontainern och dess loggar:

wslc container list
wslc container logs tekniksvar-wslc-test

När du är färdig, stoppa endast containern du nyss skapade:

wslc container stop tekniksvar-wslc-test

Eftersom den startades med --rm tas den bort när den stannar. Webbsidan ska därefter sluta svara från den containern. Ingen generell rensning behövs.

Vanliga fel och säkra första kontroller

ProblemBörja här
wslc hittas inteKontrollera wsl --version, uppdatera WSL och öppna terminalen igen. Kontrollera att du använder rätt Windows-användarkonto.
Containern kan inte starta trots rätt versionLäs hela felmeddelandet. Kontrollera WSL 2:s virtualiseringskrav och eventuell begärd omstart enligt Microsofts felsökningsguide.
Avbildningen kan inte hämtasKontrollera nätåtkomst, registrets tillgänglighet och organisationens tillåtna register. Be IT om hjälp vid policyblockering.
Port 8080 är upptagenStoppa inte någon okänd tjänst. Välj exempelvis 127.0.0.1:8081:80 för din nya testcontainer och öppna port 8081 i webbläsaren.
Testnamnet används redanLista även stoppade containrar med wslc container list --all. Välj ett nytt testnamn utan att radera den befintliga containern.
Webbservern svarar inteKontrollera wslc container list och den egna testcontainerns loggar. Kontrollera att webbadressen matchar porten du valde.

Hjälp för det installerade kommandot får du med:

wslc --help
wslc run --help
wslc image list

Om ett Windows-uppdateringsproblem hindrar installationen finns vår guide till Windows Update som fastnar. Ändra inte säkerhetspolicy eller brandvägg på måfå för att få testet att fungera.

WSL, WSLc och Docker Desktop – vad skiljer dem?

Vanlig WSL ger dig en Linux-distribution där du arbetar med skal, paket och utvecklingsverktyg. WSL Containers hanterar containeravbildningar och containrar via ett eget CLI och API. En Ubuntu-container är inte samma sak som din installerade Ubuntu-distribution.

Linux-programmen använder en Linux-kärna i en WSL-baserad virtuell miljö. Microsoft beskriver separata sessioner, virtiofs för filåtkomst och Consommé för nätverk. Det är alltså fortfarande virtualisering; containrarna körs inte direkt på Windows-kärnan.

För grundläggande bygg-, kör- och hanteringskommandon behöver WSLc ingen separat motor från tredje part. Det innebär inte att varje Docker Desktop-funktion eller befintlig projektkonfiguration fungerar oförändrad. Kontrollera särskilt Compose, Kubernetes och kopplingar till utvecklingsverktyg innan du byter arbetsflöde. Compose anges fortfarande som kommande arbete i Microsofts GA-besked, inte som en färdig del av detta startflöde.

WSLc har även ett API för Windows-appar i NuGet-paketet Microsoft.WSL.Containers. C++/WinRT-projektionen är fortfarande märkt som förhandsversion i dokumentationen. Du behöver inte API-paketet för CLI-stegen ovan. Microsoft Execution Containers för AI-agenter är ett separat system och ingår inte här.

Kör bara avbildningar du litar på. Exemplen monterar inga privata mappar och är avsedda för tillfälliga tester. Att en container har isolering gör inte godtycklig programkod ofarlig.