Operations¶
Overview¶
Bagian ini berisi prosedur operasional current-state untuk memeriksa dan
memelihara runtime Personal Site pada host builder-01.
Seluruh perintah Podman dijalankan sebagai user yang sama dengan Jenkins agent dan pemilik rootless Podman storage.
Runtime Inventory¶
Container : personal-site-web
Image : localhost/nginx-image:1.0
Network : web
Volume : www-personal-site
HTTP : 8091 β 80
HTTPS : 8443 β 443
SSH : 2224 β 22
Verify Runtime¶
podman ps --filter name=personal-site-web
podman inspect personal-site-web --format '{{.State.Status}}'
podman inspect personal-site-web --format '{{.State.Health.Status}}'
podman port personal-site-web
curl --fail --silent --show-error http://127.0.0.1:8091/ >/dev/null
Expected result:
- container berstatus
running; - health status bernilai
healthy; - port
8091dipetakan ke container port80; dan - HTTP probe selesai dengan exit code
0.
Inspect Logs¶
Gunakan log untuk memeriksa validasi konfigurasi NGINX, startup SSH, dan proses inisialisasi container.
Start, Stop, and Restart¶
Deployment release baru tetap dilakukan melalui Jenkins CD agar artifact, backup, metadata, dan validation tercatat secara konsisten.
Verify Content Volume¶
podman volume inspect www-personal-site
podman run --rm \
--volume www-personal-site:/content:ro \
--entrypoint /bin/sh \
localhost/nginx-image:1.0 \
-ec 'test -s /content/index.html; cat /content/.artifact-name'
Deploy a Release¶
- Pastikan CI untuk commit yang dituju berhasil.
- Catat nama artifact
personal-site-<BUILD_NUMBER>.tar.gz. - Buka Jenkins job
personal-site-cd. - Pilih Build with Parameters.
- Isi
ARTIFACT_NAMEdengan nama artifact lengkap. - Jalankan build dan pastikan seluruh validation stage berhasil.
- Verifikasi website dari browser melalui
http://<runtime-host>:8091/.
Recovery¶
- Jika CD gagal setelah volume diperbarui, periksa hasil rollback pada console Jenkins dan log container.
- Jika container berhenti tetapi deployment terakhir valid, jalankan
podman start personal-site-webdan ulangi HTTP probe. - Jika content tidak valid, deploy ulang artifact CI terakhir yang diketahui berhasil melalui job CD.
- Jangan mengedit file langsung di dalam
www-personal-site; perubahan manual tidak dapat ditelusuri ke artifact.
Planned Improvements¶
- Menjalankan runtime melalui systemd user service atau Podman Quadlet.
- Menambahkan automatic startup setelah host reboot.
- Menambahkan monitoring, alerting, dan log retention.
- Menguji rollback secara berkala dengan controlled failure.