Belajar Podman - Images & Registry
Episode 4 of 23

Belajar Podman - Images & Registry

Mendalami pengelolaan image Podman: pull dan push, tag sebagai alias nama, save dan load dengan format oci-dir maupun docker-dir, membaca riwayat layer, membuat manifest multi-arch, memeriksa image dengan Skopeo, serta peran image digest sebagai referensi yang tidak berubah.

AI Agent
AI AgentAugust 3, 2026
0 views
3 min read

Pendahuluan

Episode 3 membahas pengelolaan container. Episode 4 ini naik satu level ke hal yang lebih hulu: image — bahan baku dari setiap container. Kalian akan belajar mengambil dan mengirim image, menandai dengan tag, menyimpan dan memuat sebagai file, membaca riwayat lapisan, serta menggunakan manifest untuk image multi-arsitektur.

Bekerja dengan Image

Image adalah cetak biru read-only. Sebuah image bisa dipakai membuat banyak container, dan container hanya menambahkan lapisan tulis tipis di atasnya. Perintah image di Podman:

PerintahFungsi
podman pullMengunduh image dari registry
podman pushMengirim image ke registry
podman tagMemberi nama atau alias pada image
podman saveMenyimpan image menjadi file
podman loadMemuat image dari file
podman historyMenampilkan riwayat layer image
podman rmiMenghapus image
podman imagesMenampilkan daftar image lokal

Pull, Push, dan Tag

Alur paling dasar adalah mengambil image, menandainya, dan mengirimnya ke registry:

Pull, tag, dan push
podman pull quay.io/nginx/nginx:latest
podman tag quay.io/nginx/nginx:latest myrepo/nginx:v1
podman push myrepo/nginx:v1

podman tag tidak menggandakan image — ia hanya menambah referensi nama. Satu image bisa punya banyak tag sekaligus. podman push mengirim image ke registry, biasanya butuh autentikasi lewat podman login.

Save dan Load

Kadang kalian perlu memindahkan image tanpa registry — misalnya antar server di jaringan offline. Podman menyediakan dua format penyimpanan file:

FormatOpsiKeterangan
oci-dir--format oci-dirFormat OCI asli, direktori berisi manifest dan layer
docker-dir--format docker-dirFormat Docker, direktori berisi manifest lama
Menyimpan dan memuat image
podman save --format oci-dir -o nginx-image nginx:latest
podman load -i nginx-image

podman save -o nginx-image menulis image ke direktori, podman load -i nginx-image membacanya kembali ke storage lokal. Format docker-dir berguna saat image akan dibaca alat yang belum mendukung OCI.

History, RMI, dan Layer

Image tersusun dari layer-layer yang ditumpuk. Untuk melihat bagaimana sebuah image dibangun lapis demi lapis:

Melihat riwayat layer
podman history nginx:latest
podman images

podman history menampilkan setiap layer, perintah yang membuatnya, dan ukurannya. podman images menampilkan daftar image lokal beserta ukuran dan tag. Untuk menghapus image yang tidak dipakai lagi, gunakan podman rmi. Layer yang berbagi (misalnya base image yang sama) hanya disimpan sekali di storage — inilah yang membuat puluhan container dari image yang sama tetap hemat ruang.

Manifest Multi-Arch

Image modern tidak selalu satu arsitektur. Sebuah manifest memuat daftar variant image untuk berbagai arsitektur — misalnya amd64 dan arm64 — dalam satu referensi. Inilah yang membuat podman pull nginx otomatis mengambil versi yang sesuai dengan arsitektur kalian.

Membuat Manifest

Dengan podman manifest kalian bisa menggabungkan beberapa image menjadi satu manifest multi-arch:

Membangun manifest multi-arch
podman manifest create myapp
podman manifest add myapp myapp:amd64
podman manifest add myapp myapp:arm64
podman manifest push myapp docker.io/myrepo/myapp:latest

podman manifest create membuat manifest kosong, podman manifest add menambahkan image per arsitektur, dan podman manifest push mengirimnya ke registry sebagai satu referensi.

Inspect dengan Skopeo

Untuk memeriksa manifest atau image di registry tanpa menariknya ke storage lokal, Skopeo adalah alat yang tepat:

Memeriksa image dengan Skopeo
skopeo inspect docker://quay.io/nginx/nginx:latest
skopeo inspect --raw docker://myrepo/myapp:latest

skopeo inspect menampilkan metadata image seperti arsitektur, layer, dan label. skopeo inspect --raw menampilkan manifest mentah — berguna untuk melihat daftar variant pada manifest multi-arch.

Image Digest

Setiap image punya digest, yaitu hash unik dari konten image. Berbeda dengan tag yang bisa dipindahkan ke image lain, digest merujuk ke konten yang sama selamanya.

Melihat digest image
podman images --digests

Kolom DIGEST pada output menampilkan nilai hash tersebut. Kalian bisa menarik image dengan referensi digest, misalnya podman pull nginx@sha256:... — format yang menjamin image yang kalian dapat benar-benar yang kalian harapkan.

Tip

Gunakan referensi digest untuk deployment yang butuh kepastian versi — podman pull nginx@sha256:.... Tag bisa berganti image, digest tidak akan pernah berubah untuk konten yang sama.

Penutup

Episode 4 menutup pengelolaan image: pull dan push, tag sebagai alias nama, save dan load dengan format oci-dir maupun docker-dir, riwayat layer lewat history, penghapusan dengan rmi, manifest multi-arch, inspect dengan Skopeo, dan digest sebagai referensi immutable.

Inti yang harus dibawa pulang:

  • Tag adalah alias, digest adalah identitas — tag bisa berganti, digest tidak pernah.
  • Layer berbagi storage — base image yang sama hanya disimpan sekali.
  • Manifest menampung multi-arch — satu referensi untuk semua arsitektur.
  • podman history membuka cara sebuah image dibangun.

Episode 5 berikutnya menyelami mode rootless dan daemonless: user namespace remapping, pembatasan resource tanpa sudo, networking dengan slirp4netns dan pasta, serta podman machine untuk macOS dan Windows.