Seperti yang kita ketahui podman adalah alat tanpa daemon open-source yang menyediakan lingkungan untuk membangun, menjalankan, dan mengelola container. Menjalankan container sebagai layanan systemd berarti container akan secara otomatis mulai ketika sistem di-boot ulang.
Dalam posting ini, kita akan mempelajari cara menjalankan container sebagai layanan systemd dengan podman pada distribusi berbasis RHEL seperti RHEL 8, CentOS 8 dan Rocky Linux 8.
Prasyarat : Instalasi OS berbasis RHEL minimal.Koneksi Internet Stabil Pengguna Sudo dengan hak akses root
Dalam demonstrasi ini, saya menggunakan minimal RHEL 8.5, tetapi langkah-langkah ini juga berlaku untuk CentOS 8 dan Rocky Linux 8. Mari langsung ke langkah-langkahnya,
Langkah 1) Instal Podman
Untuk menginstal podman pada RHEL 8 , run
$ sudo dnf install @container-tools -y
Untuk CentOS 8 / Rocky Linux 8, run
$ sudo dnf install -y podman
Verifikasi instalasi podman
Untuk memeriksa apakah podman berhasil diinstal atau tidak, coba putar ‘ container’ menggunakan perintah di bawah podman.
$ podman -v podman versi 3.3.1 $ $ podman run ‘hello-world’
Catatan: Ketika kita menjalankan podman pertama kali maka itu meminta kami untuk memilih registri tempat Anda ingin mengunduh gambar wadah.
Output dari perintah di atas akan seperti di bawah ini:
Prefect di atas mengkonfirmasi bahwa podman berhasil diinstal. Mari kita pindah ke langkah berikutnya.
Step 2) Hasilkan Layanan Systemd dari sebuah container
Mari kita asumsikan kita ingin membuat layanan systemd untuk kontainer rsyslog. Putar container rsyslog terlebih dahulu menggunakan perintah podman berikut,
$ podman run -d –name
Catatan : Jika Anda ingin mengunduh gambar container rsyslog dari registri tertentu, gunakan sintaks berikut:
$ podman run -d –name container-name /
Dalam demonstrasi ini, saya telah menggunakan registri topi merah. Jadi pertama login ke registry
$ podman login registry.access.redhat.com Username: Password: Login Berhasil! $
Sekarang coba putar container menggunakan perintah podman berikut,
$ podman run -d –name rsyslog-server registry.access.redhat.com/rhel7/rsyslog $ podman ps
Sekarang buat layanan systemd untuk container rsyslog-server, jalankan perintah berikut
$ mkdir -p .config/systemd/user $ cd .config/systemd/user/ $ podman generate systemd –name rsyslog-server –files –new /home/sysops/.config/systemd/user/container-rsyslog -server.service $
Seperti yang kita bisa di atas bahwa layanan systemd dibuat.
Untuk detail lebih lanjut tentang perintah ‘podman generate systemd’, lihat halaman bantuannya
$ podman generate systemd –help
Langkah 3) Mulai dan Aktifkan Container Systemd Service
Jalankan perintah systemctl untuk memulai dan aktifkan layanan systemd untuk rsyslog-server container.
$ cd .config/systemd/user/ $ systemctl –user daemon-reload $ systemctl –user aktifkan container-rsyslog-server.service $ systemctl –user restart container-rsyslog -server.service
Sekarang ver ify status service systemd dan status container, run
$ systemctl –user status container-rsyslog-server.service $ podman ps
Sekarang, Ketika sistem di-boot ulang, container akan secara otomatis dijalankan melalui layanan systemd-nya. Jadi mari kita reboot sekali dan verifikasi container service.
$ sudo reboot
Setelah sistem kembali online, lalu login ke sistem dan verifikasi container service
$ podman ps $cd .config/systemd/user/ $ systemctl –user status container- rsyslog-server.service
Hebat, ini menegaskan bahwa wadah rsyslog-server dimulai secara otomatis memposting reboot melalui systemd service.
Itu saja dari posting ini, saya harap Anda telah menemukannya informatif. Silakan bagikan umpan balik dan pertanyaan Anda.
Baca Juga: Cara Menjalankan Jenkins Container sebagai Layanan Systemd dengan Docker