Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu adım adım kılavuz, WSL ile yerleşik olarak gelen kapsayıcı CLI'sini kullanarak wslc.exeWindows üzerinde Linux kapsayıcıları oluşturmaya ve çalıştırmaya başlamanıza yardımcı olur.
wslc.exe kapsayıcılı uygulamalar oluşturmak, göndermek ve çalıştırmak için tanıdık bir CLI sağlar.
WSL kapsayıcılarına genel bakış
Kapsayıcı, uygulamaları oluşturmak, dağıtmak ve çalıştırmak için kullanılan bir araçtır. Kapsayıcılar, geliştiricilerin bir uygulamayı ihtiyaç duyduğu tüm parçalarla (kitaplıklar, çerçeveler, bağımlılıklar vb.) paketlemesini ve hepsini tek bir paket olarak göndermesini sağlar. Kapsayıcı kullanmak, uygulamanın, uygulamanın kodunu yazmak ve test etmek için kullanılan makineden farklı olabilecek özelleştirilmiş ayarlardan veya çalıştıran bilgisayarda önceden yüklenmiş kitaplıklardan bağımsız olarak aynı şekilde çalışmasını sağlar. Bu, geliştiricilerin kodun çalıştırılacağı sistem hakkında endişelenmeden kod yazmaya odaklanmasına izin verir.
Önkoşullar
- WSL yüklü. En son sürüme sahip olduğunuzdan emin olmak için komutunu çalıştırın
wsl --update. - Visual Studio Code'u yükleyin(isteğe bağlı). Bu, Linux dağıtımınıza bağlı kapsayıcılı projelerinizi kodlayıp hatalarını ayıklama özelliği de dahil olmak üzere en iyi deneyimi sağlar.
- Windows Terminali'ni (isteğe bağlı) yükleyin. Bu, aynı arabirimde (Ubuntu, Debian, PowerShell, Azure CLI veya kullanmayı tercih ettiğiniz her şey dahil) birden çok terminali özelleştirme ve açma özelliği dahil olmak üzere en iyi deneyimi sağlar.
wslc'yi yükleme ve doğrulama
wslc.exe WSL'ye dahil olduğundan yüklenecek ayrı bir altyapı yoktur. WSL'nin onu içeren bir sürümüne sahip olduğunuzdan emin olmak için:
Henüz yüklemediyseniz WSL'yi yükleyin, ardından PowerShell'i açıp şunları girerek en son sürüme güncelleştirin:
wsl --updatewslc.exeöğesinin kullanılabilir olduğunu doğrulayın ve aşağıdakini girerek sürümünü kontrol edin:wslc versionBasit bir yerleşik görüntü çalıştırarak her şeyin düzgün çalışıp çalışmadığını test edin. Görüntü yerel olarak mevcut değilse otomatik olarak çekilir:
wslc run --rm hello-worldYüklemenizin düzgün çalıştığını onaylayan bir "Merhaba" iletisi görmeniz gerekir.
Tavsiye
Bilmeniz gereken birkaç yararlı wslc komut aşağıdadır:
-
wslc --helpyazarakwslcCLI’sinde kullanılabilen komutları listeleyin. - Belirli bir komutun bilgilerini şu şekilde listeleyin:
wslc <COMMAND> --help - Makinenizdeki görüntüleri şu şekilde listeleyin:
wslc image list - Makinenizde çalışan kapsayıcıları şu şekilde listeleyin:
wslc container listveya tüm kapsayıcıları (durdurulan kapsayıcılar dahil) şu şekilde listeleyin:wslc container list --all - Aşağıdakilerle çalışan kapsayıcılarınızın kaynak kullanım istatistiklerini görüntüleyin:
wslc stats
İlk konteynerlerinizi çalıştırın
Görüntüleri wslc.exe çekerek, kapsayıcıları ön planda veya arka planda çalıştırabilir, bağlantı noktaları yayımlayabilir ve çalışan kapsayıcılarla etkileşim kurabilirsiniz. PowerShell'den şu komutlardan birkaçını deneyin:
# Run a command in a throwaway container
wslc run --rm -it ubuntu:latest bash -c "echo Hello world from WSL container!"
# Run a web server in the background and publish port 8080 to the container's port 80
wslc run -d --rm -p 8080:80 --name web nginx
# Request content from the running web server
curl localhost:8080
# List the running container
wslc container list
# Run an additional command inside the running container
wslc exec web cat /etc/os-release
# Stop the container
wslc container stop web
nginx kapsayıcısı --rm ile başlatıldığı için durduğunda otomatik olarak kaldırılır.
Kendi konteyner imajınızı oluşturun ve çalıştırın
ile wslc.exeuygulama geliştirmeye başlamak için, projenizi Linux dosya sisteminde düzenleyebilmeniz ve tümleşik terminalden komut çalıştırabilmeniz için wslc birlikte VS Code kullanmanızı öneririz.
Şimdi mevcut bir uygulama projesi için kapsayıcı görüntüsü oluşturalım.
Bu örnekte, Python geliştirme ortamı kurulum belgelerinde Django için Merhaba Dünya öğreticisindeki kaynak kodunu kullanacağız. Kendi proje kaynak kodunuzu kullanmayı tercih ediyorsanız bu adımı atlayabilirsiniz. GitHub'dan HelloWorld-Django web uygulamasını indirmek için bir WSL terminali açın (örneğin Ubuntu) ve şunu girin:
git clone https://github.com/<username>/helloworld-django.gitUyarı
Kodunuzu her zaman araçları kullandığınız dosya sisteminde depolayın. Bu, daha hızlı dosya erişimi performansına neden olur. Bu örnekte, Linux dağıtımı (Ubuntu) kullanıyoruz ve proje dosyalarımızı WSL dosya sisteminde
\\wsl$depolamak istiyoruz. Proje dosyalarının Windows dosya sisteminde depolanması, WSL'de Linux araçlarını kullanarak bu dosyalara erişirken işleri önemli ölçüde yavaşlatır.WSL terminalinizde dizinleri bu projenin kaynak kodu klasörüne değiştirin:
cd helloworld-djangoAşağıdakileri girerek projeyi yerel WSL uzantısı sunucusunda çalışan VS Code'da açın:
code .VS Code örneğinizin sol alt köşesindeki yeşil uzak göstergeyi denetleyerek WSL Linux dağıtımınıza bağlandığınızdan emin olun.
Projenizin köküne, görüntünün nasıl derleneceğini açıklayan bir
Containerfileekleyin. Django örneğinde en azıContainerfileşöyle görünebilir:FROM python:3 WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . EXPOSE 8000 CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]Proje klasöründen (
Containerfileöğesini içeren dizinden), imajıwslc buildile daha sonra başvurabileceğiniz bir adla etiketleyerek oluşturun:wslc build -t helloworld-django .Görüntülerinizi listeleyerek görüntünün oluşturulduğunu onaylayın:
wslc image listYeni oluşturduğunuz imajı bir kapsayıcı olarak çalıştırın; Windows'tan erişebilmeniz için uygulamanın bağlantı noktasını yayımlayın:
wslc run -d --rm -p 8000:8000 --name django helloworld-djangoKapsayıcınızın çalıştığını onaylamak için çalışan kapsayıcıları listeleyin ve günlüklerini denetleyin:
wslc container list wslc container logs djangoWindows'da bir tarayıcı açın ve uygulamanızın kapsayıcısının içinde çalıştığını görmek için
http://localhost:8000/adresine gidin. Ayrıca kapsayıcının içinde bir komut yürüterek uygulamanın Linux üzerinde çalıştığını onaylayabilirsiniz:wslc exec django unameuname"Linux" sonucu, kapsayıcının WSL 2 Linux çekirdeğinde çalıştığını onaylar.İşiniz bittiğinde kapsayıcıyı durdurun:
wslc container stop django
Artık WSL 2 destekli wslc.exe kullanarak, VS Code ile birlikte derleyebileceğiniz, çalıştırabileceğiniz, dağıtabileceğiniz veya hata ayıklayabileceğiniz bir Linux kapsayıcısını Windows’ta başarıyla oluşturdunuz ve çalıştırdınız!
Sorun giderme
Kapsayıcıyı veya görüntüyü inceleme
Bir kapsayıcı beklenmedik şekilde davrandığında, inspect ve logs komutları sorunu teşhis etmenize yardımcı olmak için ayrıntılı bilgiler sağlar:
wslc container inspect <container-id>
wslc container logs <container-id>
wslc image inspect <image>
Disk alanını geri kazanma
İmajlar ve durdurulmuş kapsayıcılar disk alanı tüketir. Artık kullanmadığınız kaynakları temizlemek için:
# Remove all stopped containers
wslc container prune
# Remove unused images
wslc image prune
WSL'deki genel sorun giderme sorunlarıyla ilgili daha fazla yardım için Sorun giderme belgesine bakın.
Ek kaynaklar
Windows Subsystem for Linux