Ürün belgeleriSanallaştırma ve VDS
Windows Server'da WSL 2 kullanın: Linux araçları ve Docker
Windows Server 2022 veya 2025 VDS'e WSL 2 kurun, systemd'yi açın, Linux dağıtımında Docker Engine çalıştırın, kaynakları sınırlayın ve bir portu dışarı açın.
- Orta
- 25 dk okuma
- Güncellendi
Bu sayfada
WSL 2 (Windows Subsystem for Linux), Windows'un hemen içinde gerçek bir Linux çekirdeğiyle bir Linux dağıtımı çalıştırır. Bir Windows VDS'te Windows yazılımlarınızın yanında Linux komut satırı araçları, betikler ve konteynerler sunar. WSL 2 sanallaştırma kullanır, bu yüzden VDS paketlerinin içerdiği iç içe sanallaştırmaya ihtiyaç duyar.
Başlamadan önce
- Windows Server 2022 veya 2025 çalışan bir VDS ya da nested dedicated sunucu. Windows Server 2019, Microsoft belgelerindeki elle kurulum adımlarını gerektirir.
- Yönetici olarak Uzak Masaüstü erişimi.
1. adım: WSL'i kurun
PowerShell'i yönetici olarak açın:
wsl.exe --installKomut gerekli bileşenleri etkinleştirir, Linux çekirdeğini indirir, WSL 2'yi varsayılan yapar ve Ubuntu'yu kurar. Bittiğinde sunucuyu yeniden başlatın:
Restart-ComputerYeniden başlatmadan sonra Başlat menüsünden Ubuntu'yu açın (veya wsl çalıştırın) ve Linux kullanıcı adınızı ve şifrenizi oluşturun.
Doğrulama:
wsl --list --verboseDağıtım VERSION 2 gösterir.
Başka bir dağıtım kurmak için mevcut olanları listeleyin ve adıyla seçin:
wsl --list --online
wsl --install -d Debian2. adım: systemd'yi açın
Docker gibi hizmetler systemd bekler. Birçok dağıtım imajı onu zaten açık getirir; dağıtımın içinde kontrol edin ve gerekirse açın:
cat /etc/wsl.conf
sudo nano /etc/wsl.confDosyada şu satırlar olmalıdır:
[boot]
systemd=trueArdından WSL'i PowerShell'den yeniden başlatın:
wsl --shutdownDoğrulama: dağıtımı yeniden başlatın ve systemctl list-unit-files --type=service çalıştırın; hata yerine hizmetleri listeler.
3. adım: WSL içine Docker Engine kurun
Docker Desktop Windows Server'da desteklenmez. Docker Engine'i Ubuntu dağıtımına tıpkı bir Linux sunucudaki gibi Docker'ın kendi deposundan kurun: WSL içinde Ubuntu'ya Docker kurma rehberini izleyin.
Doğrulama: WSL içinde sudo docker run --rm hello-world "Hello from Docker!" yazar.
4. adım: WSL'in belleğini ve CPU'sunu sınırlayın
Varsayılan olarak WSL sanal makinesi sunucunun belleğinin yarısını ve tüm işlemcilerini kullanabilir. Windows'a yer bırakmak için C:\Users\KullaniciAdiniz\.wslconfig dosyasını oluşturun:
[wsl2]
memory=4GB
processors=2Sınırların uygulanması için wsl --shutdown çalıştırıp dağıtımı yeniden başlatın.
5. adım: Bir Linux hizmetine ulaşın
- Aynı sunucudaki Windows'tan: WSL içindeki hizmetler
localhostüzerinde yanıt verir; örneğinhttp://localhost:8080. - İnternetten: WSL 2 kendi NAT'ının arkasındadır. Microsoft'un anlattığı gibi sunucunun bir portunu WSL adresine yönlendirin ve güvenlik duvarını açın:
wsl hostname -I
netsh interface portproxy add v4tov4 listenport=8080 listenaddress=0.0.0.0 connectport=8080 connectaddress=172.30.98.229
New-NetFirewallRule -DisplayName "WSL 8080" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 8080 -Profile Anyconnectaddress olarak wsl hostname -I komutunun yazdığı adresi kullanın. WSL adresi yeniden başlatmadan sonra değişebilir; netsh interface portproxy show v4tov4 ile kontrol edip kuralı güncelleyin. WSL'deki hizmet yalnızca 127.0.0.1 üzerinde değil, 0.0.0.0 üzerinde dinlemelidir.
Sorun giderme
Error: 0x80370102 The virtual machine could not be started because a required feature is not installed. WSL 2 sanallaştırmayı kullanamıyor. Bir VDS'te olduğunuzu, Virtual Machine Platform bileşeninin kurulu olduğunu ve sunucunun yeniden başlatıldığını kontrol edin; bkz. iç içe sanallaştırma sorunları.
.wslconfig veya wsl.conf ayarları etkisiz. WSL bunları ancak sanal makine tamamen durduktan sonra uygular. wsl --shutdown çalıştırın, birkaç saniye bekleyin ve yeniden başlatın.
Yönlendirilen port yeniden başlatmadan sonra çalışmayı bıraktı. WSL adresi değişti. Port yönlendirmesinin connectaddress değerini güncelleyin.
Sonraki adımlar
- Kendi adres alanı olan tam sanal makineler: Windows VDS'te Hyper-V.
- Uygulamada konteynerler: Docker Compose temelleri.
Sık sorulan sorular
Windows Server'a Docker Desktop kurabilir miyim?
Hayır. Docker, Docker Desktop'ın Windows'un sunucu sürümlerinde desteklenmediğini belirtir. Windows Server'da bunun yerine Docker Engine'i WSL Linux dağıtımının içine kurun ya da bir Windows masaüstü imajı kullanın.
WSL 2 bir Windows VPS'te çalışır mı?
Hayır. WSL 2, Linux'u hafif bir sanal makinede çalıştırır; bu yüzden VDS ve nested dedicated paketlerimizin sunduğu, VPS paketlerinin sunmadığı iç içe sanallaştırmaya ihtiyaç duyar.
Üretim hizmetlerini WSL'de çalıştırmalı mıyım?
WSL geliştirme ve araçlar için yapılmıştır. Gün boyu çalışması gereken hizmetler için VDS'inizde bir Hyper-V sanal makinesi veya hizmetin sistemle birlikte başladığı bir Linux sunucu kullanın.
Hangi Linux dağıtımlarını kurabilirim?
Microsoft'un sunduğu dağıtımları görmek için wsl --list --online çalıştırın, ardından birini wsl --install -d ve adıyla kurun. Varsayılan olarak Ubuntu kurulur.