Bildiğiniz
gibi windows ınsider programı bizlere windows 10 içinde Hyper-V üzerinde
Container oluşturmamıza imkan sağladı.
Peki bu
Container nedir ?
Container,
kısaca yeni nesil sanallaştırma diyebileceğimiz, farklı uygulama
platformalarının tek bir işletim sisteminde çalışmasıdır diyebiliriz.
Container
kavramını docker ile birlikte anılması esasında tesadüf değildir. Peki bu
Docker nedir?
Docker aslında
bir sanallaştırma platformudur. Docker işletim sistemi imajlarını
versiyonlayan, Apache lisanslı go dili ile yazılmış bir konteyner
teknolojisidir.
Docker, linux
işletim sistemi üzerinde çalışan bir uygulamadır. Docker’ın sanallaştırma
yapısı, bilinen sanal makinelerden farklı olarak bir hypervisor katmanına sahip
olmamasıdır. Bu yazılım, Docker engine üzerinden üzerinde çalıştığı işletim
sistemine erişerek sistem araçlarını paylaşımlı olarak kullanmaya imkan
sağlamaktadır. Bu aşamada doğal olarak akıllara, “Peki bu bize ne fayda
sağlamakta” diye bir soru aklımıza gelir.
En önemli
fayda, benim pc’de çalışıyordu. Neden sunucu(server) da çalışmıyor sorusunu
ortadan kaldırmıştır. Bu platform sayesinde web sistemlerinin kurulumu, testi
ve dağıtımı hızlıca yapabilir hale gelmektedir.
Örnek vermek
gerekirse, python ile bir web yazılım geliştirildiğini farz edelim. Bunu
dockersız ortamda çalıştırmamız için öncelikle;
·
Pip, python,virtualenv .. vb gibi araçların
kurulması,
·
Django sunucusu kur,
·
Nginx, reverse proxy ayarları yap,
·
VM kur,
·
İşletim sistemi kur…. Vb gibi daha bir çok araç
kurulumu gerekmektedir.
Eğer uygulamanız bir veritabanı
kullanıyor ise ( ki kullanmalı) bu süreç daha da uzun sürecektir.
Docker esasında tam bu noktada
ortaya çıkıyor, yapılması gereken tek şey tüm komutları tek bir dockerfile
dosyasına yazıp, imajını oluşturup, istenildiği kadar sayıda sunucuya bunu
gönderiyorsunuz.
Bu imajları Docker Hub gibi
sitelerde tutup istenildiğinde hazır imajları alıp kullanabiliyorsunuz.
Docker, LXC sanallaştırma
mekanizmasını kullanan ve container denilen birimlerde çalışmaktadır. Kurulacak
sunucunun gücüne bağlı olarak binlerce container’ı tek bir makine (bu VM’de
olabilir.) çalıştırabiliyorsunuz. Container imajları ortak olan sistem
dosyalarını paylaşmakta ve bu sayede disk tasarrufu sağlamaktadır. Klasik
VM’lerde ise her bir uygulama için ayrı bir işletim sistemi imajı ve dosyalar
ayrılmak zorunda kalınmaktadır.
Resim -1-
Docker ve Container ile ilgili
daha detaylı bilgileri ise internet üzerinden oldukça fazla bilgiye
ulaşabilirsiniz.
Microsoft da Docker ile anlaşma
yaparak, Windows Container adı altında 2 tip container mantığını bu dünyaya
kazandırdı.
Microsoft tarafında
container, Windows Container ve Hyper-V
Container.
Bu yazımda Windows 10 işletim
sisteminde Hyper-V üzerinde container kurulumunun nasıl yapıldığından
bahsedeceğim.
Öncelikle Hyper-V Containers,
sadece Windows 10 Professional, Enterprise ve Education sürümlerinde
çalışmaktadır.
İlk
yapılması gereken, control panel, windows features on or off sekmesinden
Hyper-V ve Containers seçeneklerinı kurun.
Resim -2-
Bu iki komponent’i kurduktan sonra
bilgisayarı restart edin.
Pc açıldıktan sonra PowerShell konsolunu
Administrator modunda açın ve aşağıdaki komutu çalıştırın. Bu komut ile
kısıtlanmış dış policy’lere izin veriyoruz.
Set-ExecutionPolicy Unrestricted
Daha sonra container Image paketini
yükleyin.
Install-PackageProvider ContainerImage
-Force komutu ile yükleyin. Resim-3-
Resim-3-
Bu paket, temel işletim sistemi görüntülerini Hyper-V
Container’ın çekmesine izin verecektir.
Bu örnek’te Hyper-V
Container’ı çalıştırmak için Nano Server base container imajını çekmesi için
kullanılacaktır. Nano Server İmajını çekmek için Install-ContainerImage NanoServer komutunu
çalıştırın. İnternet bağlantısının hızına göre indirme işleminin hızı
değişecektir.
Container imajı
indirildikten sonra artık Docker’ı
bilgisayarınıza kurabilirsiniz. Kurulum işlemini isterseniz bir PS script’i ile
de yapabilirsiniz. http://aka.ms/tp5/update-containerhost linkindeki script’i bilgisayarınıza keydetin ve script’i
çalıştırın. Bu script, docker client, Docker Deamon ve tüm bileşenleri ve
konfigürasyonları download edecektir.
Resim-4-
Resim-4-
Tüm kurulumlar
tamamlandıktan sonra Docker komutlarını Hyper-V Containers da çalıştırabilir
durumda olacaksınız.
Docker images
komutunu kullanarak bilgisayarınızda var olan tüm imajları
görüntüleyebilirsiniz. Resim-5-
Resim-5-
Docker tag’larının
istenilen bir bir imaj’da çalıştırmak için docker
tag komutunu kullanarak yapabilirsiniz. Resim-6-
Resim-6-
Bundan sonra
Administrator yetkisi ile CMD ekranı açın. Aşağıdaki komutu kullanarak yeni bir
Hyper-V container’ı oluşturun. Resim-7-
docker run –it –isolation=hyperv
nanoserver cmd
Birkaç
dakika sonra Hyper-V Container’ı ile çalışmaya başlayacaksınız. Resim-8-
Resim-7-
Kaynak:
Hiç yorum yok:
Yorum Gönder