Bu makalemde Windows 10 Pro işletim sistemi üzerine Docker kurulumunu anlatacağım.

Docker for Windows” sürümü Windows 10 işletim sisteminde çalışacak şekilde tasarlanmıştır. Dockerize uygulamaların oluşturulması, göndermek ve çalıştırmak için kolay bir geliştirme ortamı sağlayan yerel bir Windows uygulamasıdır. Docker, Windows 10 üzerindeki Hyper-V sunucu sanallaştırma ve ağ katmanını kullanır. Böylece Windows işletim sistemi üzerinde Docker uygulamalarının hızlı ve güvenilir olacak şekilde kullanabilirsiniz. Windows for Docker üzerindeki image’larınızı hem Linux hem de farklı bir Windows Docker üzerinde çalışmasını desteklenir.

28 Mayıs 2020 tarihinde Microsoft Windows 10 20H1 güncellemesi olarak da bilinen uzun zamandır beklenen Windows 10 2004 yükseltmesini yayınlamıştı. Bu güncelleme ile önemli bir yeni özellik olarak; Linux için Windows Alt Sisteminin (WSL2) 2. Sürümünün yayınlanmasıdır. WSL2’deki önemli değişiklik, artık Hyper-V özelliklerinin bir alt kümesi aracılığıyla gerçek bir Linux çekirdeği kullanılabilmesidir.

WSL2 ile; Windows Home Edition kullanıcıları için de desteği mevcuttur. Yeni WSL2 sayesinde Docker’ı VirtualBox kurmadan Windows Home üzerinde çalıştırabilirsiniz. Daha eski Windows 10 sürümleri bu zaten yapılabiliyordu, ancak sadece Windows 10 Pro ve Windows 10 Enterprise sürümüyle. Windows 10 Home Edition’da Docker ana bilgisayarını her zaman VirtualBox içinde sanal makine olarak çalıştırmanız gerekiyordu. Yeni Windows sürümüyle bu artık geçiş, geçmişte kaldı ve Docker’ı Windows 10 Home Edition’da çalıştırmak çok daha kolaylaştı.

Docker “Enterprise Edition” ve “Community Edition” olmak üzere iki farklı sürüm ile piyasa sunulmaktadır. Enterprise Edition; Büyük kuruluşlar için kurumsal destek anlaşma paketinin yer aldığı ücretli sürümüdür. Biz bu çalışmamızda ücretsiz ve topluluğa hitap eden “Community Edition” sürümünü kullanacağız.

Docker Community Edition’da “Stabil” ve “Edge” olmak üzere iki sürümü yer almaktadır. Stabil olan sürüm her 3 ayda bir güncellenmektedir. Edge sürümü ise sürekli güncellenmektedir.

Stabil (Kararlı) SürümEdge  Sürüm
Çalışmak için güvenilir bir platform istiyorsanız kullanabileceğiniz en iyi seçimdir.Deneysel özellikleri daha hızlı almak istiyorsanız Edge sürümünü kullanabilirsiniz. Edge sürümü bazı dengesizlikleri ve hataları giderebilirsiniz.
Kullanım istatistiklerini ve diğer verileri gönderip göndermemeyi seçebilirsiniz.Edge sürümlerinde kullanım istatistikleri verileri toplanmaktadır.
Kararlı sürümler her çeyrekte bir güncellenir.Edge yapıları ayda bir kez güncellenir.

Docker için sistem gereksinimleri;

  • Windows 10 64 bit işletim sistemi; Professional, Enterprise yada Education sürümü desteklenir. Kurulum öncesinde Windows 10’un 2004 sürümü çalıştırdığınızı kontrol edin. Bu işlem için “winver.exe” aracını kullanabilirsiniz.

Not: Bilgisayarınız daha eski bir sürümle çalışıyorsa, güncellemenin mevcut olup olmadığını görmek için Windows Update uygulmasıı ile güncelleyiniz.

  • Docker, Microsoft’un Windows 10 işletim sistemi için destek yaşam döngüsüne dayalı olarak Docker Desktop’ı destekler. Windows 10 işletim sistemi sürümünün güncel olması gerekiyor. Destek yaşam döngüsü (support lifecycle) erişimi için; https://support.microsoft.com/en-us/help/13853/windows-lifecycle-fact-sheet
  • Windows 10 işletim sisteminde Hyper-V ve Containers özellikleri etkinleştirilmelidir.
  • Bilgisayarınızdaki işlemcinizin 64 bit ve SLAT (Second Level Address Translation) desteği olmalıdır.
  • En az 4 GB RAM,
  • BIOS ayarlarında “Hardware Assisted Virtualization” ve “Data Execution Protection” seçenekleri etkinleştirilmiş olmalıdır.
  • Windows Subsystem for Linux” uygulaması kurulum öncesinde hazır olmalıdır.

WSL2 kurulumu ve yapılandırılması

Windows’a herhangi bir Linux dağıtımını yüklemeden önce, ilk olarak “Windows Subsystem for Linux” özelliğini etkinleştirmelisiniz. Bu işlem için önce PowerShell’i yönetici olarak açın ve aşağıdaki komutu çalıştırınız.

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

Kurulum işlemi tamamlandıktan sonra “Virtual Machine Platform” kurulumu için Powerhell’de aşağıdaki komut çalıştırılır. Kurulum işlemi başarılı tamamlandıktan sonra işletim sisteminizi yeniden başlatınız.

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

WSL2 Linux Kernel güncellemesi için “wsl_update_x64.msi” paketi kurulur.  Bu paketi indirmek için https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi adresini kullanabilirsiniz.

WSL 2’yi varsayılan sürümünüz olarak ayarlayınız bu işlem için: PowerShell’i yönetici olarak açın ve yeni bir Linux dağıtımı yüklerken WSL 2’yi varsayılan sürüm olarak ayarlanması için “wsl –set-default-version 2” komutu çalıştırınız.

Docker Kurulumu

Docker uygulamasını indirmek için docker’in resmi web sitesinden “Get Started” adresine gidilir.

Get Started with Docker” sayfasında “Docker Desktop” seçeneğinde yer alan “Download for Windows” butonu ile docker kurulum dosyası indirilir.

Docker Desktop for Windows, Stabil sürümünün kurulum paketini indirmek için: https://download.docker.com/win/stable/Docker%20Desktop%20Installer.exe

Docker Desktop for Windows Edge sürümünün kurulum paketini indirmek için: https://download.docker.com/win/edge/Docker%20Desktop%20Installer.exe

Windows işletim sistemi üzerine Docker uygulamasını kurulumunu başlatmak için “Docker Desktop Installer.exe” dosyası yönetici ayrıcalıkları ile başlatılır.

Başlangıçta, Docker Desktop yükleyicisi bazı paketleri indirmeye başlamalıdır. Bu tamamen normaldir, bitene kadar birkaç saniye bekleyin.

Configuration” sayfasında WSL 2 Özelliklerini etkinleştirilmesi ve masaüstüne kısa yol eklenmesi için ilgili seçenekler seçilir ve kurulum işlemini başlatmak için “OK” butonu seçilir.

Kurulum sihirbazındaki talimatları izleyiniz. Kurulum sihirbazının yetkilendirilmesi istenmesi durumunda Windows UAC (User Access Control) ‘den onay veriniz.

Kurulum işlemi tamamlandıktan sonra işletim sisteminizi yeniden başlatmak için “Close and Log out” butonuna basınız.  

İşletim sistemi açıldıktan sonra Docker servislerinin açılması için kısa bir süre beklenir.

Servislerin açılması tamamlandıktan sonra “No containers running” bilgilendirme uyarısını aldığınız powershell ile aşağıdaki komutu çalıştırınız. Bu komutun çalıştırılması ile docker’a ait getting-started imajı internet üzerinden indirilip Docker üzerine eklenecektir.

Docker image’i başarılı olarak indirildiği ve çalıştırıldığından emin olmak için aşağıdaki ekrandaki kırmızı ile seçili alanlar ve “Docker/getting-started” imajının çalışır durumunda “Running” bilgisi ile doğrulanır.

Windows 10 işletim sistemi üzerinde http://localhost:80 adresine giderecek test imajımızın çalışıp/çalışmadığın kontrol edebilirsiniz.

Kurulum ve test işlemi tamamlandıktan sonra; Docker sürüm bilgisini ve yüklü olan ortam bilgisini kontrol etmek için “docker version” komutu çalıştırılır.