Podman Nedir ve Nasıl Kullanılır?

Podman Nedir?

Podman, konteynerler oluşturmak, yönetmek ve çalıştırmak için kullanılan açık kaynaklı bir araçtır. Docker’a benzer bir kullanıcı deneyimi sunar, ancak sürekli çalışan bir arka plan daemon’una ihtiyaç duymaz. Bu, Podman’ı Docker’a göre daha hafif ve güvenli bir seçenek haline getirir.


Podman’ın Faydaları

Daemon Gerektirmez

Docker’ın aksine, Podman sürekli olarak çalışan bir servis gerektirmez. Bu özellik, yalnızca gerekli olduğunda işlem çalıştırarak kaynak verimliliğini artırır ve sürekli çalışan bir daemon yükünü ortadan kaldırır. Bu tasarım tercihi, sistem performansını iyileştirir ve Podman’ı hem geliştirme hem de üretim ortamlarında mükemmel bir seçenek yapar.

Rootless Çalışma

Podman, root ayrıcalıkları gerektirmeden çalışabilir, bu da önemli bir güvenlik avantajı sağlar. Geleneksel olarak konteynerler, yönetim ve kontrol için root erişimi gerektirir, bu da potansiyel güvenlik açıklarına yol açar. Podman, konteynerleri rootless (root’suz) modda çalıştırarak saldırı yüzeyini azaltır ve güvenliği artırır.

Docker Uyumluluğu

Podman, büyük ölçüde Docker’ın komut satırı arabirimi (CLI) ile uyumludur. Bu, Docker kullanıcılarının minimal değişikliklerle Podman’a geçiş yapabilmesini sağlar. Podman, mevcut Docker bilgilerini kullanarak yeni bir öğrenme süreci olmadan verimli bir şekilde çalışmanıza olanak tanır.

Konteyner Orkestrasyonu

Podman, Kubernetes uyumlu YAML dosyalarını destekler, bu da konteyner orkestrasyonu için gereklidir. Bu sayede Podman, daha büyük Kubernetes tabanlı altyapılara sorunsuz bir şekilde entegre olabilir. Tek bir konteyneri yönetmek veya karmaşık çoklu konteyner uygulamalarını orkestre etmek için Podman, esneklik sağlar.


Podman Kurulumu

Podman’ın kurulumu, kullanılan işletim sistemine bağlı olarak değişir. Aşağıda, en yaygın platformlarda Podman kurulumunun nasıl yapılacağına dair detaylı bir rehber bulunmaktadır.

Ubuntu’da Podman Kurulumu

Ubuntu’da Podman’ı kurmak için şu adımları izleyin:

  1. Depoyu Ekleyin:
<span role="button" tabindex="0" data-code=" sudo sh -c "echo 'deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/x${VERSION_ID}/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list" wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/x${VERSION_ID}/Release.key -O Release.key sudo apt-key add –
   sudo sh -c "echo 'deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/x${VERSION_ID}/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list"
   wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/x${VERSION_ID}/Release.key -O Release.key
   sudo apt-key add - < Release.key
   sudo apt-get update
  1. Podman’ı Kurun:
   sudo apt-get -y install podman

CentOS/RHEL’de Podman Kurulumu

CentOS veya RHEL için adımlar:

  1. Depoyu Ekleyin:
   sudo yum -y install epel-release
   sudo yum -y install https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_8/devel:kubic:libcontainers:stable.repo
  1. Podman’ı Kurun:
   sudo yum -y install podman

Fedora’da Podman Kurulumu

Fedora genellikle Podman’ı varsayılan paket depolarında içerir. En son sürümü kurmak için:

sudo dnf -y install podman

macOS’da Podman Kurulumu

macOS’ta Homebrew paket yöneticisini kullanarak Podman’ı kurabilirsiniz.

  1. Homebrew’ün Kurulu Olduğundan Emin Olun:
   /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  1. Podman’ı Kurun:
   brew install podman
  1. Podman’ı Başlatın:
   podman machine init
   podman machine start

Windows’da Podman Kurulumu

Windows’ta Podman’ı kullanabilmek için Windows Subsystem for Linux (WSL) gereklidir.

  1. WSL Kurun: PowerShell’i yönetici olarak açın ve aşağıdaki komutu çalıştırın:
   wsl --install
  1. Bilgisayarınızı Yeniden Başlatın.
  2. Bir Linux Dağıtımı Kurun: Microsoft Store’dan bir Linux dağıtımı, örneğin Ubuntu’yu indirip kurun.
  3. Linux Dağıtımında Podman Kurulumu: Yukarıdaki Ubuntu kurulum adımlarını takip edin.
  4. Podman’ı Başlatın: Podman sürümünü kontrol etmek için:
   podman --version

Temel Podman Komutları

Podman, komut yapısı açısından Docker’a benzer şekilde çalışır. İşte bazı temel Podman komutları:

Konteyner Çalıştırma

Bir konteyner çalıştırmak için:

podman run -it --name mycontainer ubuntu bash

Bu komut, ubuntu imajını kullanarak yeni bir konteyner başlatır ve konteyner içinde interaktif bir terminal oturumu (bash) açar.

Çalışan Konteynerleri Listeleme

Tüm çalışan konteynerleri listelemek için:

podman ps

Tüm Konteynerleri Listeleme

Tüm konteynerleri (duranlar dahil) listelemek için:

podman ps -a

Bir Konteyneri Durdurma

Bir çalışan konteyneri durdurmak için:

podman stop mycontainer

Bir Konteyneri Kaldırma

Duran bir konteyneri kaldırmak için:

podman rm mycontainer

Resimleri Listeleme

Tüm mevcut konteyner imajlarını listelemek için:

podman images

Bir İmaj Çekme

Bir konteyner imajını (örneğin, Ubuntu) çekmek için:

podman pull ubuntu

Bir İmaj Kaldırma

Bir imajı kaldırmak için:

podman rmi ubuntu

Podman ile İlk Konteynerinizi Çalıştırma

Podman ile ilk konteynerinizi çalıştırmak oldukça basittir. İşte ubuntu imajını kullanarak adım adım bir rehber:

  1. Ubuntu İmajını Çekin:
   podman pull ubuntu
  1. Konteyneri Çalıştırın:
   podman run -it --name first_container ubuntu bash

Bu komut, konteyner içinde bash shell kullanarak interaktif bir terminal oturumu başlatacaktır.

  1. Konteyner İçinde İşlemler Yapın

Konteyner içinde yazılım yüklemek gibi işlemler yapabilirsiniz:

apt update
apt install -y nginx
  1. Konteynerden Çıkın

İşlemleriniz bittiğinde konteynerden çıkmak için:

exit
  1. Konteynerleri Listeleyin

Konteynerlerinizin durumunu kontrol etmek için:

podman ps -a

Podman ile İmaj Yönetimi

Podman, konteyner imajlarını yönetmek için güçlü araçlar sunar. İşte bazı yaygın işlemler:

Mevcut İmajları Listeleme

Sistemdeki tüm mevcut konteyner imajlarını görmek için:

podman images

Yeni Bir İmaj Çekme

Yeni bir imaj çekmek için, örneğin alpine imajını:

podman pull alpine

Bir İmajı Etiketleme

Bir imajı daha kolay referans almak için etiketleme:

podman tag alpine myrepo/alpine:latest

Bir İmajı Gönderme

Bir imajı uzak bir kayıt defterine göndermek için:

podman push myrepo/alpine:latest

Bir İmajı Kaldırma

Bir imajı yerel sisteminizden kaldırmak için:

podman rmi alpine

Podman ile Ağ ve Depolama Yönetimi

Podman, konteynerler için ağ ve kalıcı depolama yönetimi seçenekleri sunar.

Ağ Yönetimi

Varsayılan olarak, Podman konteyner iletişimi için bir ağ oluşturur. Özel durumlar için kendi ağınızı oluşturabilirsiniz.

Özel Ağ Oluşturma:

podman network create my_network

Ağ Bilgilerini Listeleme:

podman network ls

Sonuç

Podman, Docker’a güçlü bir alternatif olarak ortaya çıkan, hafif, güvenli ve daemon’suz çalışan bir konteyner yönetim aracıdır. Rootless çalışma, Docker uyumluluğu ve kolay kurulum özellikleriyle geliştiriciler ve sistem yöneticileri için etkili bir çözümdür. Podman, konteyner yönetimini kolaylaştırırken, güvenliği artırmak ve kaynakları daha verimli kullanmak isteyenler için ideal bir araçtır.

Önceki Konu

Zimbra'da Disk Alanı Açma Yöntemleri

Sonraki Konu

Kendi SSL Certificate Authority (CA) Oluşturma Rehberi

Bültenimize Abone Olun 📬

En son gönderilerimizin doğrudan e-posta kutunuza gelmesi için e-posta bültenimize abone olun.
Düşüncelerinizi özgür bırakın ✨