İşte Windows'ta en iyi Docker deneyimini nasıl elde edeceğiniz.
Linux 2 için Windows Alt Sistemi, Windows 10 ve 11'de olağanüstü bir araçtır ve Docker ile sorunsuz bir şekilde bütünleşir. Geliştiriciler olarak, bu yazılımların neler sunduğunu ve Docker-WSL 2 kurulumunuzdan en iyi şekilde nasıl yararlanabileceğinizi anlamak çok önemlidir.
Docker Nedir?
Docker, geliştiricilerin uygulamalarını bir kapsayıcı içinde verimli bir şekilde oluşturmasına, dağıtmasına ve çalıştırmasına olanak tanıyan açık kaynaklı bir platformdur. Tüm bağımlılıklar, projenizin herhangi bir ortama kolayca dağıtılabilmesi için bir araya getirilmiştir.
Docker, güvenilir, işlevsel ve yüksek düzeyde ölçeklenebilir olduğu için birçok konteynerleştirme platformu arasında çok popülerdir. Test ve dağıtım için temiz ve hafif bir ortam sağlayan temel bir DevOps aracı olan Docker motorunda çalışır. Docker, sanal bir makineye benzer, ancak temeldeki donanım yerine işletim sistemini sanallaştırır.
Yazılım geliştiriciler için Docker, gerekli bağımlılıkları, kitaplıkları ve yapılandırmaları içeren farklı mikro hizmetler için ayrı kaplar oluşturarak iş akışını kolaylaştırır. Her bir mikro hizmet kapsayıcısı yalıtılmıştır ve ayrı ayrı ölçeklenebilir.
WSL 2'de Docker Nasıl Kullanılır?
Docker, Windows, macOS ve Linux gibi tüm büyük işletim sistemleriyle uyumludur. Windows 10 veya 11 kullanıyorsanız, Docker'ı Docker Desktop aracılığıyla kullanabilirsiniz ve Linux 2 için Windows Alt Sistemi ile entegre edin geliştirilmiş performans için. Windows için Docker Desktop'ı şu adresten indirebilirsiniz: resmi Docker web sitesi.
Linux için Windows Alt Sistemi (WSL), Windows kullanıcılarının bir sanal makine veya çift önyükleme kurmadan Ubuntu ve Kali gibi Linux dağıtımlarını çalıştırmalarına olanak tanıyan değerli bir özelliktir.
Bu aynı zamanda şu anlama gelir: Windows kullanıcıları doğrudan Linux komut satırı araçlarını kullanabilir, uygulamalar ve yardımcı programlar, ekstra kurulum adımları olmadan. WSL'nin en yeni sürümü olan WSL 2, daha fazla kararlılık ve özel bir Linux çekirdeği sağlar.
Docker kapsayıcıları sağlam olduğundan, bunları sunucunuzu barındıracak şekilde bile yapılandırabilirsiniz; nginx docker konteynerleri genellikle web sunucuları olarak kullanılır. Ek olarak, Docker'ı başka şekillerde de kullanabilirsiniz:
- Linux dağıtımlarını kolayca çalıştırın
- Öğrenme veya test etme amacıyla bir web sunucusu kurun
- Taşınabilir dağıtım uygulamaları
- Uygulamayı tek bir görüntü dosyasında paketleyin
- Basitleştirilmiş CI/CD işlem hattı
Docker'ı Linux 2 için Windows Alt Sistemi ile diğer herhangi bir platform veya araçta olduğu gibi kullanmaya yönelik en iyi uygulamalara aşina olmalısınız. Bir geliştirici olarak, kişisel deneyimlerime dayanarak, aşağıdaki ipuçlarını iş akışınıza entegre ettiğinizde çok daha üretken ve verimli olacağınızı söyleyebilirim.
1. VS Code'u WSL 2 ile entegre edin
Visual Studio Code, inanılmaz özellikleri, topluluğu ve uzantıları nedeniyle sevilen popüler bir IDE'dir. Bir geliştirici olarak, bir Windows platformunda uygulama geliştirme için Visual Studio Code'u kullanma becerisi ayrıca bu uygulamaları bir Linux çekirdeğinde çalıştırmak inanılmaz derecede avantajlı ve neredeyse inanılmaz özellik.
VS Code'u Linux için Windows Alt Sistemine entegre ettiğinizde, platformlar arası uyumluluğu geliştirmek için özel Linux çekirdeğinden yararlanabilirsiniz. WSL 2 ile VS Kodu içindeki entegre terminali kullanarak iş akışınızı daha da kolaylaştırabilirsiniz.
İle Windows'ta WSL 2 ile VS Code kurulumu, yapılandırabilirsiniz WSL VS Code Marketplace'ten uzantı alın ve işleri yoluna koyun.
2. WSL 2 Dosya Sistemini Kullanın
Docker kapsayıcılarınızı düzgün bir şekilde çalıştırmak için, yerel Windows dosya sistemine çok fazla bağımlı olmamak yerine, WSL 2 dağıtımınızın dosya sistemine güvenmeniz çok önemlidir. WSL 2'de Docker kapsayıcılarıyla çalışma deneyimim boyunca, proje dosyalarınızı WSL içinde depolamanın daha iyi olduğunu keşfettim.
3. Yerel Linux Komut Dosyalarını Kullanın
Üzerinde çalışacağınız birçok kapsayıcılı proje, muhtemelen Linux'ta otomasyon için betiklerle birlikte gelir. Tipik olarak, bu betikler ilk olarak Linux için geliştirilir ve Windows geliştiricileri bir öncelik değildir.
WSL 2 ile tüm ekibiniz aynı Linux otomasyon betiklerini kullanabilir ve ekibiniz için Windows uyumlu otomasyon betiklerini koruma konusunda endişelenmenize gerek kalmaz.
4. Geliştirilmiş Güvenlik ve Performans için BuildKit'i Yapılandırma
BuildKit, performans ve güvenlik açısından geleneksel Docker oluşturma sürecini geliştiren açık kaynaklı bir araç setidir; doğrudan Docker ile entegredir, bu nedenle ayrı olarak yüklemenize gerek yoktur.
etkinleştirdiğinizde Yapı Kiti varsayılan olarak, size daha iyi güvenlik, eşzamanlılık, esneklik ve önbelleğe alma sağlayan, kapsayıcılarınızın BuildKit araç seti ile oluşturulduğundan emin olursunuz.
BuildKit'i varsayılan olarak etkinleştirmek için ~/.profile yapılandırma dosyasında aşağıdaki değişiklikleri yapmalısınız:
ihracat DOCKER_BUILDKIT=1.
5. Kaynak Sınırlarını Ayarlayın
WSL 2 arka ucunu Docker Desktop ile entegre ettiğinizde, Docker'a tüm CPU kaynaklarınıza erişim izni vermiş olursunuz. Bunu yapmak, yoğun kaynak kullanan kapsayıcılar için performansı artırmaya yardımcı olur.
Ancak bazı durumlarda, bir kap çok fazla bellek ayırarak kritik işletim sistemi işlemlerinin çökmesine neden olabilir. Veritabanı kapsayıcıları veya önbelleğe alınan bir mikro hizmet kullanırken bunu yaşama olasılığınız daha yüksektir.
Neyse ki, sistem belleğini ve CPU kullanımını sınırlamak için Docker kapsayıcılarını yapılandırabilirsiniz. Sistem belleğini yapılandırırken her zaman dikkatli olmalısınız, en küçük bir hata bile önemli sonuçlar doğurabilir. başvurabilirsiniz resmi Docker belgeleri Docker kapsayıcısı tarafından tüketilen bellek ve CPU kaynaklarını sınırlama hakkında daha ayrıntılı bir kılavuz için.
6. Önbelleğe Alınmış Belleği Kurtar
WSL 2'de bir Docker kapsayıcısı çalıştırıyorsanız, kap sona erdiğinde belleğinin boşaltılması gerekir. Ne yazık ki, işletim sistemi çekirdeği verileri önbellekte tutma eğilimindedir; bu, WSL 2 tarafından geri kazanılan etkin belleğin yeterli olmayacağı anlamına gelir.
WSL 2'de root aracılığıyla aşağıdaki komutu çalıştırarak gereksiz yere önbellek olarak kullanılan tüm belleği kurtarabilirsiniz:
Eko 1 > /proc/sys/vm/drop_caches
WSL 2 ile Daha Akıllı Olun
WSL 2, Windows tabanlı geliştiriciler için en iyi özelliktir ve geliştiricilerin Docker'ı kullanma şeklini tamamen değiştirir. Geliştiriciler, performansı, güvenliği ve iş akışı esnekliğini iyileştirmek için Docker'ı WSL ile kullanmaya yönelik en iyi uygulamaları anlamalıdır.