2026-07-18
Import Docker Image ke OpenShift Internal Registry
Pada lingkungan OpenShift disconnected (air-gapped), cluster tidak dapat melakukan pull image secara langsung dari registry publik seperti Docker Hub. Oleh karena itu, image perlu dipindahkan terlebih dahulu ke OpenShift Internal Registry agar dapat digunakan oleh workload di dalam cluster.
Artikel ini membahas proses export image, transfer ke host tujuan,
import image, push ke Internal Registry, hingga deployment menggunakan
oc new-app.
Prerequisites
- Memiliki akses ke cluster OpenShift.
- Sudah login menggunakan
oc login. - Podman atau Docker telah terpasang.
- Namespace tujuan telah dibuat.
- Route Internal Registry telah diaktifkan.
Export Docker Image
Simpan image menjadi file .tar agar dapat dipindahkan ke host
yang memiliki akses ke cluster.
docker save -o /path/to/your/image.tar wbitt/network-multitool:openshift Transfer Image
Salin file image ke host tujuan menggunakan scp.
scp /path/to/your/image.tar user@target-machine:/path/on/target/machine/ Import Image
Setelah file berhasil dipindahkan, import image ke Docker atau Podman.
docker load -i image.tar atau menggunakan Podman:
podman load -i image.tar Verifikasi bahwa image berhasil diimport.
docker images Login ke OpenShift Internal Registry
Ambil hostname Internal Registry OpenShift.
HOST=$(oc get route default-route -n openshift-image-registry --template='{{ .spec.host }}') Login menggunakan token OpenShift.
podman login -u kubeadmin -p $(oc whoami -t) --tls-verify=false $HOST Tag Image
Sebelum melakukan push, image harus ditag sesuai format registry OpenShift.
podman tag docker.io/wbitt/network-multitool:openshift default-route-openshift-image-registry.apps.ocp.dev.co.id/nsdummy/network-multitool:latest Push Image ke Internal Registry
Push image ke OpenShift Internal Registry.
podman push default-route-openshift-image-registry.apps.ocp.dev.co.id/nsdummy/network-multitool:latest Verifikasi ImageStream
Pastikan ImageStream telah berhasil dibuat.
oc get is Deploy Aplikasi
Deploy image yang telah tersedia pada Internal Registry menggunakan
oc new-app.
oc new-app network-multitool:latest --name network-multitool Verifikasi deployment yang telah dibuat.
oc get pods
oc get deployment
oc get svc Verifikasi
Jika seluruh proses berhasil, ImageStream akan tersedia pada namespace,
deployment berhasil dibuat, dan pod akan berada pada status
Running.
oc get is
oc get pods
oc get deployment Catatan
- Pastikan telah login ke OpenShift menggunakan
oc login. - Namespace tujuan harus memiliki permission untuk melakukan push image.
- Gunakan tag image yang konsisten agar mempermudah proses deployment.
- Pada lingkungan disconnected, seluruh image yang dibutuhkan harus dipush ke Internal Registry sebelum digunakan.
Kesimpulan
OpenShift Internal Registry memungkinkan image dari registry eksternal
digunakan pada lingkungan disconnected tanpa memerlukan akses internet.
Prosesnya meliputi export image, transfer ke host tujuan, import image,
autentikasi ke Internal Registry, push image, kemudian deployment
menggunakan oc new-app. Dengan pendekatan ini, image dapat
dikelola secara terpusat dan digunakan oleh workload di dalam cluster.