Pardus 21.X’ e Enine Boyuna Docker Kuralım

Evet çağımızın getirmiş olduğu en yeni teknolojilerden biri olan Docker ile ihtiyaç duyduğunuz servisleri ekstra makinalara kurmak yerine bilgisayarınızdan sanki o ekstra makinalar varmış gibi çalışmanızı sağlayabilirsiniz. Özellikle benim gibi bir geliştiriciyseniz ve çeşitli platformlarda çeşitli DB serverlara bağlanmanız gerekiyorsa inanın hepsini mevcut işletim sisteminize kurarak bir kaç gün sonra PC’nizin kağnı hızında hareket etmesini istemezsiniz, hatta göçmesini 🙂

Şimdi size Docker tam olarak nedir, nasıl kullanılır gibi konulardan bahsetmeyeceğim. Amacımız Pardus makinamıza Docker engine kurmak ve ihtiyaç duyduğumuz ekstra uygulamaları burada ayağa kaldırıp kendi küçük server çifliğimizi yaratmak 🙂

Tabiki her Linux kurulumunda olduğu gibi güncel bir sistem ile işe başlamak için artık aşağıda aşina olduğumuz komutumuzu vererek vira bismillah diyiyoruz 😀

$ sudo apt update 
$ sudo apt upgrade -y

Şimdi ikici kısım olan Docker’ın bağımlılıklarını işletim sistemimize yüklemeye geldi. Aşağıdaki komutu verip bağımlılıkların yüklenmesini sağlıyoruz.

$ sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release -y

Bende bu işlem yukarıdaki fotoğraftaki gibi kısa sürdü 🙂 Sonra Docker repository’ sini eklemek ve gerekli ayarlarını yapmak var. Bu sebeple aşağıdaki komutlar ile yola devam.

$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Bu arada ben kopyalama yapıştırma yaparken aynı komutu yukarıdaki fotoğrafta görmüş olduğunuz üzere yanlışlıkla bir daha vermişim 🙂 Temelde sizde de bu işlemler yukarıdaki fotoğraftaki gibi görünüp, hızlıca olup bitecek. Şimdi esas aşamalara başlıyoruz. Fakat yine bir aşağıdaki komut ile sistemimizin baktığı repolarımızı tazeleyip ardından Docker Egine kurulumuna geçelim.

$ sudo apt update

Hooobaaa ne oldu yaw? Sizde benim gibi bir hata aldıysanız ki büyük ihtimalle internetten bulduğunuz bir, iki hatta tek kaynakta (ben dahil sanırım iki olduk) bunun çözümüde mevcut. Şimdi efendim gelelim neden böyle bir hata aldık. Cevap çokta karmaşık olmamakla birlikte docker kendi deposunda son versiyon bilgisini biraz alışılmışın dışında tuttuğu için diyebiliriz. Peki biz ne edeceğiz hemen aşağıdaki komutu ufak bir değişiklikle tekrardan girip yolumuza devam edeceğiz.

$ echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
  stretch stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Tataamm sonuç yukarıdaki gibi bu komuttan sonra gayet normal bir şekilde sizlere gelmeye başlayacak. Şimdi şu engine bir kuralım artık. Hadi aşağıdaki komutla devam.

$ sudo apt install -y docker-ce docker-ce-cli containerd.io

Bundan sonrası biraz zaman alacak paketler inecek, derlenecek, kurulacak falan, filan derken en son sizde benim aşağıda gördüğüm ekrana kavuşacaksınız.

Kurulum tamamlandı gibi gözüküyor. Hadi gelin bunu bir kaç yolla doğrulayalım. Aşağıdaki komutları girdiğinizde karşınıza hemen komutların aşağısında yer alan fotoğraftaki gibi bir ekran çıkacak.

$ docker -v
$ sudo systemctl status docker

Fakat işimiz tam bitmedi. Şimdi genelde test amaçlı Docker içinde yer alan “hello-world” container’ını indirip yüklemenizi sağlayan aşağıdaki komutu çalıştırmanızı söyler. Fakat bu komutu çalıştırdığınızda hatayla karşılaşma oranınız çok yüksektir. O yüzden sizleri uğraştırmadan bu komut öncesi aşağıdakileri sırasıyla çalıştırmanızı tavsiye ederim.

$ sudo usermod -aG docker $USER
$ newgrp docker
$ docker run hello-world

Bu şekilde çalıştırdığınız halde aşağıda yer alan fotoğraftaki gibi bir hata aldıysanız o zaman çözüme ulaşmak için biraz daha yolumuz var demektir.

Şimdi aşağıdaki son iki komutu girip ardından şu “hello-world” çağrımını tekrardan yapalım.

$ sudo mkdir /sys/fs/cgroup/systemd
$ sudo mount -t cgroup -o none,name=systemd cgroup /sys/fs/cgroup/systemd
$ docker run hello-world

Veeee sonunda taaataaaam 😀 aşağıdaki fotoğraftaki gibi nihai sonuç karşınızda, hadi herkese geçmiş olsun şimdi Docker’ımızı istediğimiz gibi kullanabiliriz. 🙂

Yer işareti koy Kalıcı Bağlantı.

Bir yanıt yazın

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