Cara menginstal Podman di Debian 11

Posted on

[ad_1] Cara menginstal Podman di Debian 11

Podman, yang dikembangkan oleh RedHat, adalah mesin kontainer tanpa daemon gratis, open source, yang dirancang sebagai alternatif mesin runtime Docker yang populer. Sama seperti Docker, ini memudahkan untuk membangun, menjalankan, menyebarkan, dan berbagi aplikasi menggunakan gambar kontainer dan kontainer OCI (Open Container Initiative). Podman menggunakan nama pengguna dan ruang nama jaringan dan dibandingkan dengan Docker, Podman lebih terisolasi dan aman. Sebagian besar perintah di Docker berfungsi di Podman. Jadi jika Anda terbiasa menjalankan perintah Docker, Padman akan sangat mudah digunakan.

Dalam panduan ini kita akan belajar cara menginstal Padman Pada Debian 11 tahi lalat tengah

Instal Podman di Debian 11

Paket Padman, perpustakaan, dan dependensi sudah di-host di repositori resmi Debian. Jadi Anda dapat dengan mudah menginstal Padman menggunakan manajer paket APT.

Pertama, perbarui daftar paket:

$ sudo apt update

Kemudian pasang mesin kontainer Padman sebagai berikut:

$ sudo apt install podman

Saat diminta untuk melanjutkan, ketik “Y” dan tekan ENTER.

Untuk memverifikasi versi Podman yang diinstal, jalankan:

$ podman --version
Lihat versi Padman
Lihat versi Padman

Untuk mengumpulkan lebih banyak detail tentang mesin kontainer Padman, jalankan perintah:

$ sudo podman info

Anda akan melihat banyak output yang menunjukkan detail rumit seperti yang kami miliki di bawah ini.

Lihat info Padman
Lihat info Padman

Konfigurasikan registry Podman

Berkas registri registry.conf adalah file konfigurasi yang menentukan pendaftar kontainer untuk digunakan kapan pun Anda ingin mendorong atau menyeret gambar. adalah path lengkap dari file /etc/containers/registries.conf. Ada berbagai pendaftar kontainer termasuk hub Docker, Quay.io, RedHat dan banyak lainnya.

Anda dapat melihat file menggunakan editor teks Anda seperti yang ditunjukkan

# sudo /etc/containers/registries.conf

Di Docker, satu-satunya penampung registri adalah Docker Hub. Podman menawarkan lebih banyak kebebasan kepada pengguna untuk mencari dan menarik gambar dari registri apa pun. Anda dapat menentukan daftar pendaftar penampung dengan menambahkan baris berikut.

unqualified-search-registries = [ 'registry.access.redhat.com', 'registry.redhat.io', 'docker.io']

Saat berlari podman search Atau podman pull perintah, podman akan memanggil pendaftar ini secara berurutan, dimulai dengan registri pertama. Simpan perubahan dan keluar dari file.

Cari gambar

Sebelum menarik gambar kontainer, sebaiknya periksa ketersediaannya di berbagai pendaftar.

Sebagai contoh

$ sudo podman search nginx
Cari gambar kontainer Nginx
Cari gambar kontainer Nginx

Outputnya memberi Anda banyak informasi, termasuk nama registri, nama gambar, dan deskripsi singkat.

Masuk ke registri

Sebelum Anda mulai menyeret atau mendorong gambar, Anda harus memasukkan registri. Pada contoh di bawah ini, saya masuk ke akun Redhat saya, yang sebenarnya memberi saya akses ke registri.

$ sudo podman login registry.access.redhat.com
Podman Masuk ke registri
Podman Masuk ke registri

Untuk keluar dari registri, jalankan perintah berikut:

$ sudo podman logout registry.access.redhat.com

Menggambar

Untuk menggambar gambar, gunakan sintaks:

$ sudo podman pull image_name

Misalnya, untuk menarik gambar build Nginx resmi, jalankan perintah:

$ sudo podman pull docker.io/library/nginx
Tarik gambar Nginx menggunakan Padman
Tarik gambar Nginx menggunakan Padman

Mari kita coba menggambar gambar lain. Kami menggambar gambar MongoDB resmi sebagai berikut.

$ sudo podman pull docker.io/library/mongo
Tarik gambar Mongo menggunakan Padman
Tarik gambar Mongo menggunakan Padman

Cantumkan gambar

Keluarkan perintah untuk membuat daftar semua gambar.

$ sudo podman images
Buat daftar gambar kontainer menggunakan Padman
Buat daftar gambar kontainer menggunakan Padman

Buat wadah dari gambar

Sekarang gambar kita berada di sistem Debian, kita dapat memulai sebuah wadah menggunakan sintaks yang ditunjukkan. Opsi -d menjalankan wadah di latar belakang --name opsi menentukan nama khusus untuk wadah

$ sudo podman run -d  --name container_name  image

Misalnya, untuk memulai wadah di latar belakang yang disebut webserv1 dari gambar Nginx, jalankan perintah:

$ sudo podman run  -d --name webserv1 docker.io/library/nginx

Anda dapat meluncurkan beberapa wadah dari gambar yang sama. Mari luncurkan wadah lain bernama webserv2 dari gambar Nginx yang sama.

$ sudo podman run -d --name webserv2  docker.io/library/nginx
Luncurkan wadah dari gambar

Wadah pengindeksan

Di bagian ini, kita akan menjelajahi berbagai perintah yang dapat Anda gunakan dengan container.

Untuk memeriksa container mana yang sedang berjalan, jalankan perintah berikut:

$ sudo podman ps

Keluaran disajikan dalam kolom yang memberikan informasi seperti ID wadah, nama GAMBAR, perintah yang menjalankan wadah, tanggal pembuatan, dan status.

Untuk membuat daftar semua kontainer termasuk yang sudah usang:

$ sudo podman ps -a

hentikan wadah

Untuk menghentikan wadah, gunakan sintaks

$ sudo podman stop CONTAINER_ID

Atau

$ sudo podman stop container_name

Pada contoh di bawah, saya telah menghentikan penampung pertama yang terdaftar menggunakan ID penampungnya

$ sudo podman stop 9daeaabdfdfc

Anda dapat memverifikasi bahwa wadah dihentikan dengan menggunakannya podman ps perintah kita dapat dengan jelas melihat bahwa setelah menghentikan gambar, kita hanya memiliki 1 gambar yang sedang berjalan.

Kita dapat membekukan gambar
Kita dapat membekukan gambar

partikel untuk objek langsung podman ps -a Perintah mencantumkan kedua wadah, termasuk yang baru saja dihentikan.

$ sudo podman ps -a
Periksa podman dari semua kontainer, termasuk kontainer yang dihentikan
Periksa podman dari semua kontainer, termasuk kontainer yang dihentikan

Luncurkan wadah

Untuk memulai wadah, gunakan sintaks:

$ sudo podman start CONTAINER_ID

Atau

$ sudo podman start container_name

Misalnya, untuk memulai webserv1, jalankan:

$ sudo podman start webserv1
Mulai wadah Padman
Mulai wadah Padman

Akses cangkang wadah

Mengakses shell wadah paling baik diwakili oleh wadah sistem operasi.

Di sini, kita akan mengunduh atau menarik gambar Ubuntu:

$ sudo podman pull docker.io/library/ubuntu

Dari gambar, kami membuat atau meluncurkan wadah dan menggunakannya untuk mengakses shell -it pilihan.

$ sudo podman run --name ubuntu -it docker.io/library/ubuntu  /bin/bash
Podman mendapatkan cangkang interaktif dari sebuah wadah
Podman mendapatkan cangkang interaktif dari sebuah wadah
  • -i, -interactive Tetap buka STDIN meskipun tidak terhubung
  • -t, –tty Tetapkan TTY semalaman. Mode default salah

Periksa log untuk wadah

Untuk memeriksa log wadah, gunakan sintaks:

$ sudo podman logs container_name

Sebagai contoh:

$ sudo podman logs webserv2
Periksa log kontainer dengan padman
Periksa log kontainer dengan padman

Tampilkan statistik penampung

Untuk menampilkan statistik semua container yang sedang berjalan, jalankan:

$ sudo podman stats
Lihat statistik gambar kontainer
Lihat statistik gambar kontainer

Periksa wadah

Untuk mencetak detail kompleks tentang wadah, gunakan opsi periksa:

$ sudo podman inspect webserv2

Ini mencetak output panjang dalam format JSON.

Periksa gambar menggunakan Padman
Periksa gambar menggunakan Padman

Gunakan opsi –format untuk memfilter output. Misalnya, jalankan untuk mencetak alamat IP dari wadah webserv2

$ sudo podman inspect webserv2 --format '{{.NetworkSettings.IPAddress}}'

Kemudian Anda dapat melakukan informasi IP tambahan, misalnya menggunakan curl untuk mengambil header HTTP.

$ curl -I ip-address
Output filter perintah inspeksi Padman
Output filter perintah inspeksi Padman

Hapus wadah

Untuk melepas atau mengeluarkan wadah sepenuhnya, pertama-tama hentikan wadah jika menyala dan terakhir keluarkan. Dalam contoh ini, kami telah menghentikan dan menghapus wadah websev1.

$ sudo podman stop webserv1

Kemudian keluarkan wadah yang dihentikan.

$ sudo podman rm webserv1
Ambil wadah menggunakan Padman
Ambil wadah menggunakan Padman

Hapus gambar

Untuk menghapus gambar, pertama-tama pastikan Anda menghentikan dan menghapus semua wadah yang berjalan dari gambar. Pada langkah selanjutnya, dari rmi pilihan seperti yang ditunjukkan.

$ sudo podman rmi image_name

Misalnya, untuk menghapus gambar Ubuntu, jalankan perintah berikut:

$ sudo podman rmi  docker.io/library/ubuntu
Hapus gambar menggunakan Padman
Hapus gambar menggunakan Padman

Instal Podman terbaru – kompilasi dari sumber

Anda dapat menguji versi terbaru Podman dengan menginstal versi pengembangan dari sumber.

01. Bangun dan jalankan dependensi

sudo apt-get install \
   btrfs-progs \
   git \
   golang-go \
   go-md2man \
   iptables \
   libassuan-dev \
   libbtrfs-dev \
   libc6-dev \
   libdevmapper-dev \
   libglib2.0-dev \
   libgpgme-dev \
   libgpg-error-dev \
   libprotobuf-dev \
   libprotobuf-c-dev \
   libseccomp-dev \
   libselinux1-dev \
   libsystemd-dev \
   pkg-config \
   runc \
   make \
   libapparmor-dev \
   gcc \
   cmake \
   uidmap \
   libostree-dev 

02. Instal Conmon

Khas adalah monitor kontainer, yang merupakan program C kecil yang tugasnya adalah untuk melihat proses awal dari kontainer.

git clone https://github.com/containers/conmon
cd conmon
make
sudo make podman
sudo cp /usr/local/libexec/podman/conmon  /usr/local/bin/

03. Instal runc

Untuk menginstal versi terbaru dari runc

git clone https://github.com/opencontainers/runc.git $GOPATH/src/github.com/opencontainers/runc
cd $GOPATH/src/github.com/opencontainers/runc
make BUILDTAGS="selinux seccomp"
sudo cp runc /usr/bin/runc

03. Instal Antarmuka Jaringan Kontainer (CNI).

Plugin CNI digunakan untuk memasukkan antarmuka jaringan ke dalam ruang nama jaringan kontainer.

git clone https://github.com/containernetworking/plugins.git $GOPATH/src/github.com/containernetworking/plugins
cd $GOPATH/src/github.com/containernetworking/plugins
./build_linux.sh
sudo mkdir -p /usr/libexec/cni
sudo cp bin/* /usr/libexec/cni

Mulai jaringan

sudo mkdir -p /etc/cni/net.d
curl -qsSL https://raw.githubusercontent.com/containers/libpod/master/cni/87-podman-bridge.conflist | sudo tee /etc/cni/net.d/99-loopback.conf

Tambahkan konfigurasi

sudo mkdir -p /etc/containers
sudo curl -L -o /etc/containers/registries.conf https://src.fedoraproject.org/rpms/containers-common/raw/main/f/registries.conf
sudo curl -L -o /etc/containers/policy.json https://src.fedoraproject.org/rpms/containers-common/raw/main/f/default-policy.json

04. Instal Podman dari sumber

git clone https://github.com/containers/podman/ $GOPATH/src/github.com/containers/podman
cd $GOPATH/src/github.com/containers/podman
make
sudo make install
$ podman --version
podman version 4.0.0-dev

Hasil

Kami berharap kami telah memberi Anda dasar yang kuat dalam perjalanan Anda untuk menjadi profesional yang lebih baik dalam menggunakan Padman untuk membuat dan mengelola container. Panduan ini memandu Anda dalam menginstal Padman di Debian 11 Buster.

[ad_2]

Source link

Leave a Reply

Your email address will not be published. Required fields are marked *