Skip to content

M12 · Bab 8± 60 menitDraf AI

Proyek Mini: Siap Production

Tujuan belajar

  • Mengemas API pesanan (M08/M09) menjadi image dengan Dockerfile multi-stage yang berjalan sebagai user non-root
  • Menyusun compose.yaml berisi aplikasi, PostgreSQL, Redis, Prometheus, Grafana, dan Jaeger
  • Mengaktifkan Actuator, metrics Prometheus, tracing OpenTelemetry, structured log, dan graceful shutdown
  • Membangun pipeline GitHub Actions dari test → image → deploy contoh ke VPS via SSH
  • Menilai kesiapan rilis dengan production readiness checklist

Prasyarat: CI/CD dengan GitHub Actions

Kuis

5 soal · lulus bila minimal 70% benar

1.Setelah docker compose up -d, service app terus restart dengan log Connection to postgres:5432 refused, padahal PostgreSQL akhirnya hidup. depends_on ditulis sebagai daftar biasa [postgres]. Perbaikan yang paling tepat?
2.Apa yang terjadi pada request POST /api/orders yang sedang diproses saat container menerima SIGTERM dari docker compose stop, bila aplikasi memakai server.shutdown: graceful dan spring.lifecycle.timeout-per-shutdown-phase: 20s?
3.Kamu ingin melihat satu request lambat POST /api/orders dari log sampai ke query database-nya. Kombinasi apa yang memungkinkan ini?
4.Workflow deploy menjalankan docker compose pull && docker compose up -d di VPS via SSH. Rekan mengusulkan menyimpan private key SSH langsung di file workflow agar praktis. Respons paling tepat?
5.Smoke test setelah deploy memanggil curl --fail http://vps/actuator/health/readiness dan gagal dengan HTTP 503. Apa artinya?

Jawab semua soal dulu (0/5)