Tips buat yang jalanin #container terutama menggunakan #podman dan #quadlet.
Jika container tersebut butuh konsistensi data pada storage, misalnya database, biasanya untuk memberhentikan container itu butuh waktu yang cukup lama karena container tersebut akan melakukan "bersih-bersih" terlebih dahulu.
Timeout default saat stop container quadlet adalah 10 detik (yang merupakan default dari podman). Seringkali ini tidaklah cukup. Jika diabaikan, aplikasi di container tersebut akan diterminasi paksa sebelum dia selesai bersih-bersih.
Agar tidak di-terminasi paksa jika lebih dari 10 detik, naikkan batas timeout misal menjadi 120 detik (atau nilai lain yang dianggap wajar).
Caranya cukup edit file quadlet anda:
[Container]
...
...
...
PodmanArgs=--stop-timeout 120
...
...
...
[Service]
...
...
...
TimeoutStopSec=120
...
...
...
Catatan, [Container] dan [Service] tidak perlu anda ketik ulang, karena biasanya sudah ada di file quadlet tersebut. "..." juga hanya sebagai ilustrasi saja, tidak perlu anda ketik ulang.
Mengapa butuh dua baris tersebut, di [Container] dan juga [Service]?
Pada section --stop-timeout= pada section [Container] itu fungsinya untuk memberitahu podman bahwa batas timeout adalah 120 detik.
Sedangkan TimeoutStopSec= pada section [Service] untuk menaikkan batas timeout #systemd ketika menunggu podman selesai melakukan terminasi.
Jadi pada [Container] itu untuk timeout podman menunggu aplikasi selesai. Sedangkan pada [Service] untuk timeout systemd menunggu podman selesai.