Linux Unix

Centos 7 Docker Kurulumu, Container Oluşturulması, Yedekleme Ve Geri Yükleme

Docker teknoloji ürünü bugünlerde oldukça yaygın.Birçok sistem yöneticileri Linux’da konteynırlarla çalışırken Docker’in sağladığı birçok avantaj yüzünden Docker birçok kişi tarafından bir numaralı tercihidir.Bu yazıda Centos 7 De docker nasıl kurulur,Container Nasıl oluşturulur,Docker ile Backup ve Restore işlemi nasıl gerçekleşir bunlar hakkında sizlere bilgi vermeye çalışacağım. Umarım Docker’a yeni başlayanlara anlaşılır şekilde rehber olması dileğiyle.Docker teknolojisi benim fazlası ile dikkatimi çekmiştir ve bu durum benim Docker ile tanışmama olanak sağladı.Elimden geldiği kadarıyla sizlere doğru ve anlaşılır bilgi veremeye çalışacağım.

Docker, LXC (Linux Container) üzerine kurulu bir teknolojidir. Aynı linux işletim sistemi üzerinde birbirinden ayrı şekilde çalışan konteynerler oluşturmaktadır. Her bir konteyner bir process kullanmakta ve bu sayede konteynerler kolaylıkla çoğaltılabilmektedir. Docker, klasik sanal makinelerden (vmware, virtualbox vb.) farklı olarak bir Hypervisor katmanına sahip değildir. Bunun yerine Docker Engine üzerinden konak işletim sistemine erişerek sistem kaynaklarını paylaşımlı kullanır.

Başlıca Avantajları Nelerdir?

  • Docker Hypervisor kullanmaz ve tam yüklü bir işletim sistemi barındırmaz oluşturulduğunda çok kısa sürede çalışır ve hazır hale gelir.
  • Docker tamamen birbirinden bağımsız çalışır bu da zaten Docker birinci tercih edilme sebeplerinden birisi.Docker yazılımlarımızı tüm alt yapı gereksinimlerini kod bloğu şeklinde tutar.Bağımsız çalışması sayesinde yazılımımızı farklı servsi sağlayıcıları üzerşinde gezdirebiliriz,çoğaltabiliriz veya paylaşabiliriz.
  • Docker çok az kaynak büyük işler yapabilri.Bunun ana sebebi kullandığı kontayner teknolojisidir.
  • Docker çok esnek bir yapıya sahiptir.Örneğin uygulamanıza beklenmedik bir şekilde trafik geldiğinde anında 1000’lerce konteynır hazır hale gelerek yükünüzü hafifletir.
  • Docker tamamen geliştirici dostu,sürekli deriz ya benim makinamda çalışıyor sende neden çalışmadı demeye Docker uygulamalarınızı standart bir zemine oturtarak farklı platformlarda dahi aynı şekilde çalışmasını sağlar.

Saniyeler içerisinde binlerce uygulama arasından istediğinizi kurabileceğiniz gibi standart Centos, Ubuntu, Debian gibi linux işletim sistemlerini yalın olarak koşturabilirsiniz. Dilerseniz Docker Hub üzerinde dilerseniz private repo veya farklı bir registry üzerinden image kullanabilirsiniz. Docker ile sınırları zorlayın.Sloganımız tam olarak bu!

Docker uygulamaları bir konteynır üzerinden yöneten ve herhangi bir dışarıdan müdahale olmaksızın gerçekleşen açık kaynak kodlu bir teknoloji ürünüdür.Açık kaynak kodlu olduğundan tamamen istekleriniz doğrultusunda değiştirebiliriz.Docker bir sanal makine gibidir ancak sanal bir makineden bağlı olarak,bütün bir sanal işletim sistemi oluşturmak yerine , Docker uygulamaların aynı Linux çekirdeğini kullandıkları sistem olarak kullanmasına izin verir.Bu önemli bir performans artışı sağlar.ve uygulamanın boyutunu azaltır.

CentOS 7 Üzerinde Docker Kurulumu Nasıl Yapılır?

!!!Terminal Root Login Yapıldı…!!!

# curl -fsSL https://get.docker.com/ | sh

# usermod -aG docker root

# systemctl start docker && systemctl enable docker

# docker version

# docker info

Docker Temelleri

Docker kurulumunun nasıl olduğunu öğrendiğimize göre sırada Docker kullanımına geçtik.Başlangıç olarak her programlamacı gibi bizde “Hello World!” komutunu çalıştıralım.Aşağıdaki komut yardımıyla gerçekleştirelim.

#docker run hello-world

Bu test imajı Docker’ı her yeniden yüklemenizde kontrol etmeniz tavsiye edilen imajdır.

Sisteminizde var olan imajları aşağıdaki komut yardımıyla kontrol edebilirsiniz.

#docker images

Docker’da search komutuyla belirli mevcut imajı Docker deposunda ayarlayabilirsiniz.

#docker search [image_name]

Örneğin, CentOS 7 ile alakalı bir imajı arayabiliriz.

#docker search centos7

Ve eğer bunu indirmek isterseniz aşağıdaki komutla yapabilirsiniz:

#docker pull [image_name]

Son olarak, imajı çalıştırmak için run komutunu kullanın. İmajı ID’si veya direkt olarak adıyla belirtebilirsiniz.

#docker run -t -i [imaj_id veya imaj_adi]

-i seçeneği imajın interaktif yapılacağı anlamına gelirken -t seçeneği ise terminale erişiminiz olduğu ve bir terminali simüle edebileceğiniz anlamına gelir.

İmajdan çıkmak için CTRL+D kombinasyonunu kullanın.

IMAGE INDIRILMESI/CONTAINER OLUÞTURULMASI

—————————————–

# docker pull osmansecer/test –> Docher Hub üzerinde bulunan image’i indermek için kullanılan komuttur.

# docker images –> indirilen imagelar görüntülenir.

# docker run -d --privileged --name nginx_web -p 80:80 osmansecer/test /sbin/init –> indirilen images’dan container oluþturulur. !!!GIRIS BILGILERI SAYFANIN EN ALTINDA MEVCUT.!!!

# docker run -d --privileged --name nginx_web2 -p 8080:80 osmansecer/test /sbin/init –> indirilen ayný images’dan ikinci bir container olusturur. !!!GIRIS BILGILERI SAYFANIN EN ALTINDA MEVCUT.!!!

# docker exec -it CONTAINER-ID /bin/bash –> olusturulan ve çalıstırılan containere terminal baglantısı yapılabilir.

# exit –> container consol modundan çıkılır

# docker ps –> Halihazırda çalışmakta olan Container’ları listeler

# docker ps -a –> Docker Daemon üzerindeki bütün Container’ları listeler

# docker ps -aq –> Docker Daemon üzerindeki bütünContainer’ların ID’lerini listeler.

# docker stop CONTAINER-ID –> Aktif Container’i durdurmak için

# docker start CONTAINER-ID –> Pasif Container’i baslatmak için

# docker rm CONTAINER-ID –> çıkış yapıyor Container’lar silinebilir.

# docker rm -f CONTAINER-ID –> -f ile, çalışan Container silinebilir. yerine önce “docker stop CONTAINER-ID” durdurduktan sonra, silinedebilir.

# docker --> Daha fazla ve detaylıdocker komutları için inceleyiniz.

CentOS 7’de Docker Compose Nasıl Yüklenir?

Docker Composer, Docker Konteynerların (Container) tek bir yml uzantılı dosya ile yönetmemize olanak sağlayan orkestrasyon aracıdır.Docker Compose Docker’da imajları görüntülemenizi sağlayan bir araçtır.Birçok programın çalışmak için başka hizmetler gerektirdiğinden oluşturulmuştur.Normal şartlarda hepsini teker teker çalıştırmamız ve yapılandırmanız gerekir. Docker Composer sayesinde ana imaja bağımlı olan bütün imajlarla her şeyi bir dosyada tanımlayabilir ve normal olarak yükleyebilirsiniz.

CentOS 7’de Docker Compose yüklemek için bu komutu çalıştırın:

#curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Eğer curl yüklü değilse aşağıdaki komutla yükleyebilirsiniz:

#yum install curl

Daha sonra ise Docker Compose ikilisine çalıştırma izinleri atamanız gerekir:

#chmod +x /usr/local/bin/docker-compose

Şimdiyse aracı terminalde kullanırken hiçbir problem oluşmayacağından emin olabilmek için sisteme bir sembolik bağlantı oluşturmanız gerekecektir:

#ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

Son olarak kurulu versiyonu kontrol edin:

#docker-compose --version

Artık hem Docker, hem de Docker Compose’u kullanmaya hazırsınız.

DOCKER CONTAINER BACKUP VE RESTORE İŞLEMLERİ

CONTAINER/IMAGE BACKUP

———————-

# docker commit -p  Container_ID  NewImageName      –> Container, Image olarak yedeklenebilir.

# docker images             –> Yedeklenen image görülür.

# docker save -o centos_web_yedek.tar centos_web_yedek     –> image’ı rar dosyası olarak kayıt ediyoruz.

# ls -l

!!!centos_web_yedek.tar  dosyası, yedekleme ünitesine yedeklenir.!!!

# docker rm -f CONTAINER-ID          –> Test için containerida silelim

# docker rmi osmansecer/test        –> image’larıda silelim. RESTORE testi yapmak için

# docker rmi centos_web_yedek    –> image’larıda silelim. RESTORE testi yapmak için

IMAGE/CONTAINER RESTORE

———————–

# docker load -i centos_web_yedek.tar   –> RESTORE YAPMAK İÇİN, image’ı import ediyoruz.

# docker images      –> centos_web_yedek image’ı geri yuklenmiş olur

# docker tag IMAGE_ID NEWIMAGENAME:latest  –> Image’ın yeni isimle kopyasını alıyoruz

# docker rmi ESKIIMAGENAME –> Image’ın eski adı olanı siliyoruz.

# docker run -d --privileged --name nginx_web -p 8080:80 osmansecer/test /sbin/init –> import edilmiş imagedan, container oluşturulur.

# docker exec -it nginx_web /bin/bash  –> Terminal Bağlantısı

NGINX WEB TEST BILGILERI

————————

http://10.251.0.10/dbadmin

http:// 10.251.0.10:8080/dbadmin

Kimlik Doğrulama Ekranı

Kullanıcı Adı: admin

Şifre        : 12345678

PhpMyAdmin Girişi

Kullanıcı Adı: root

Parola       : 123456

SONUÇ

Docker son zamanlarda yaygın biçimde kullanılmakta olan bir teknoloji yazılım ürünüdür. Uygulamaların konteynır formunda dağıtılması sayesinde uyumluluk sorunları yaşanmaz. Ek olarak, Docker mevcut konteynırların kurulumunu ve bakımını kolaylaştırır. Öte yandan, eğer Docker’ın teknolojisine Compose gibi bir aracı eklerseniz üretkenlik ve verimlilik ile daha üst seviyelere çıkarabiliriz.

Docker’ı bilmek oldukça önemli hale gelmiştir. Bu yüzden Docker’ın web sitesini ziyaret etmenizi ve daha fazla bilgi almanızı öneriyoruz. Mutlu öğrenmeler! Yazının başlangıçta söylediğim sloganı tekrarlıyorum.Docker ile sınırlarınızı zorlayın!!!.

İlgili Makaleler

3 Yorum

  1. Merhabalar,

    Benim C diskimde Docker kurulu örneğin bir başka disk olan S VE H disklerime docker aracılığı ile centos kurup içerisinde örneğin jupyterhub kurmak istiyorum. bu mümkün mü veya nasıl yaparım

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu