Tutorial buruh pelabuhan ini membahas metode untuk menghentikan satu wadah buruh pelabuhan, beberapa kontainer buruh pelabuhan, atau semua kontainer buruh pelabuhan yang berjalan sekaligus. Anda juga akan belajar menghentikan container buruh pelabuhan dengan anggun.
Untuk menghentikan wadah buruh pelabuhan, yang harus Anda lakukan adalah menggunakan ID wadah atau nama wadah dengan cara berikut:
docker stop container_ID_or_name
Anda juga dapat menggunakan perintah docker container stop container_id_or_name tapi itu adalah satu kata tambahan dalam perintah dan itu tidak memberikan manfaat tambahan, jadi tetap gunakan docker stop.
Namun ada lebih banyak lagi cara menghentikan container docker yang harus Anda ketahui, khususnya jika Anda seorang pemula Docker.
Contoh praktis untuk menghentikan wadah buruh pelabuhan
Saya akan membahas berbagai aspek seputar menghentikan wadah buruh pelabuhan dalam tutorial ini:
- Hentikan wadah buruh pelabuhan
- Hentikan beberapa kontainer buruh pelabuhan sekaligus
- Hentikan semua kontainer buruh pelabuhan dengan gambar tertentu
- Hentikan semua container buruh pelabuhan yang sedang berjalan sekaligus
- Menghentikan kontainer buruh pelabuhan dengan anggun
Sebelum Anda melihatnya, Anda harus tahu cara mendapatkan nama atau ID penampung.
Anda dapat membuat daftar semua kontainer buruh pelabuhan yang berjalan dengan docker ps
memerintah. Tanpa opsi apa pun, perintah docker ps hanya menampilkan container yang sedang berjalan.
[email protected]:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1bcf775d8cc7 ubuntu "bash" 8 minutes ago Up About a minute container-2
94f92052f55f debian "bash" 10 minutes ago Up 10 minutes container-1
Outputnya juga memberi Anda nama container dan ID container. Anda dapat menggunakan salah satu dari keduanya untuk menghentikan wadah.
Sekarang mari kita hentikan container.
1. Hentikan wadah buruh pelabuhan
Untuk menghentikan container tertentu, gunakan ID atau namanya dengan perintah docker stop:
docker stop container_name_or_ID
Outputnya seharusnya lebih deskriptif tetapi hanya menunjukkan nama atau ID wadah mana pun yang Anda berikan:
[email protected]:~$ docker stop 1bcf775d8cc7
1bcf775d8cc7
Anda dapat menggunakan perintah docker stop pada container yang sudah dihentikan. Itu tidak akan menimbulkan kesalahan atau keluaran yang berbeda.
Anda dapat memverifikasi jika wadah telah dihentikan dengan menggunakan perintah docker ps -a. Opsi -a menunjukkan semua container apakah sedang berjalan atau berhenti.
[email protected]:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1bcf775d8cc7 ubuntu "bash" 19 minutes ago Exited (0) About a minute ago container-2
94f92052f55f debian "bash" 29 minutes ago Up 29 minutes container-1
Jika statusnya Exited, berarti container sudah tidak jalan lagi.
2. Hentikan beberapa kontainer buruh pelabuhan
Anda juga dapat menghentikan beberapa wadah buruh pelabuhan sekaligus. Anda hanya perlu memberikan nama dan ID penampung.
docker stop container_id_or_name_1 container_id_or_name_2 container_id_or_name_3
Seperti sebelumnya, output hanya akan menampilkan nama atau ID container:
[email protected]:~$ docker stop container-1 container-2 container-3
container-1
container-2
container-3
3. Hentikan semua wadah yang terkait dengan gambar
Sejauh ini apa yang Anda lihat menghentikan penampung dengan menyebutkan nama atau ID mereka secara eksplisit.
Bagaimana jika Anda ingin menghentikan semua container yang sedang berjalan dari image buruh pelabuhan tertentu? Bayangkan sebuah skenario di mana Anda ingin menghapus image buruh pelabuhan tetapi Anda harus menghentikan semua container yang sedang berjalan.
Anda dapat memberikan nama atau ID penampung satu per satu tetapi itu memakan waktu. Yang dapat Anda lakukan adalah memfilter semua container yang sedang berjalan berdasarkan gambar dasarnya.
Cukup ganti IMAGE_NAME dengan nama gambar buruh pelabuhan Anda dan Anda akan dapat menghentikan semua container yang sedang berjalan yang terkait dengan gambar tersebut.
docker ps -q --filter ancestor=IMAGE_NAME | xargs docker stop
Opsi -q hanya menampilkan ID penampung. Berkat perintah xargs yang luar biasa, ID container ini disalurkan ke docker stop sebagai argumen.
4. Hentikan semua container buruh pelabuhan yang sedang berjalan
Anda mungkin menghadapi situasi di mana Anda diminta untuk menghentikan semua container yang sedang berjalan. Misalnya jika Anda ingin menghapus semua container di Docker, Anda harus menghentikannya terlebih dahulu.
Untuk melakukan itu, Anda dapat menggunakan sesuatu yang mirip dengan apa yang Anda lihat di bagian sebelumnya. Hapus saja bagian gambarnya.
docker ps -q | xargs docker stop
5. Hentikan wadah dengan anggun
Sejujurnya, buruh pelabuhan menghentikan wadah dengan anggun secara default. Saat Anda menggunakan perintah docker stop, penampung memberikan waktu 10 detik sebelum mematikannya secara paksa.
Itu tidak berarti bahwa selalu butuh 10 detik untuk menghentikan sebuah wadah. Hanya saja jika container sedang menjalankan beberapa proses, dibutuhkan waktu 10 detik untuk menghentikan proses dan keluar.
Perintah berhenti Docker terlebih dahulu mengirimkan perintah SIGTERM. Jika conainer dihentikan dalam periode ini, ia mengirimkan perintah SIGKILL. Suatu proses mungkin mengabaikan SIGTERM tetapi SIGKILL akan segera mematikan proses tersebut.
Saya harap Anda tahu perbedaan antara SIGTERM dan SIGKILL.
Apa itu SIGTERM? Apa perbedaan antara SIGKILL &SIGTERM? Baik SIGTERM dan SIGKILL digunakan untuk mematikan proses di Linux. Tetapi Anda harus lebih suka menggunakan SIGTERM. Inilah alasannya! Buku Pegangan LinuxAbhishek PrakashAnda dapat mengubah masa tenggang 10 detik ini dengan opsi -t. Misalkan Anda ingin menunggu 30 detik sebelum menghentikan wadah:
docker stop -t 30 container_name_or_id
Pada akhirnya…
Saya pikir banyak informasi ini mencakup topik dengan sangat baik. Anda tahu banyak hal tentang menghentikan wadah buruh pelabuhan.
Nantikan tips dan tutorial buruh pelabuhan lainnya. Jika Anda memiliki pertanyaan atau saran, beri tahu saya di bagian komentar.