Advertisement

Melihat Logs dan Status Container di Docker: Biar Nggak Tersesat di Lautan Container!

 File:Docker (container engine) logo.svg

Docker memang bikin hidup developer lebih mudah, asal tahu cara ngeceknya! Kalau tiba-tiba aplikasi dalam container nggak jalan, atau malah container mati diam-diam tanpa pamit, gimana cara nyari tahu penyebabnya?

Jawabannya adalah: Lihat status dan logs container!

Di artikel ini, kita bakal bahas dua perintah penting yang akan bikin hidupmu lebih tenang saat debugging:

  1. docker ps & docker inspect – Buat ngecek status container, masih hidup atau udah almarhum.
  2. docker logs – Buat melihat apa yang terjadi di dalam container, biar nggak tebak-tebakan.

Siap? Ayo kita selami dunia logs dan status container dengan gaya santai, tapi tetap profesional!

1. Melihat Status Container: docker ps dan docker inspect

Kalau kamu curiga ada sesuatu yang aneh di container, langkah pertama adalah cek statusnya:

docker ps

 Apa yang terjadi?
Perintah ini bakal menampilkan daftar container yang sedang berjalan, seperti ini:

CONTAINER ID   IMAGE     STATUS         PORTS                    NAMES
8f3a2b6d5c1a   nginx     Up 10 minutes  0.0.0.0:8080->80/tcp     web_server
b9d2f8c7e3f2   redis     Up 5 minutes   0.0.0.0:6379->6379/tcp   cache_service

Kalau container nggak muncul, coba cek semua container termasuk yang sudah mati dengan:

docker ps -a

Kalau container statusnya "Exited", berarti dia mati. Kasihan.

 Mau cek detail statusnya?
Gunakan perintah:

docker inspect <CONTAINER_ID>

Misalnya:

docker inspect web_server

Ini akan menampilkan info lengkap container, termasuk konfigurasi, status jaringan, dan penyebab kenapa dia berhenti.

2. Melihat Logs Container: docker logs

Kalau container mati atau ada error, logs adalah sahabat terbaikmu!

docker logs <CONTAINER_ID>

Misalnya:

docker logs web_server

 Apa yang terjadi?
Docker akan menampilkan semua output yang terjadi di dalam container, kayak ini:

Starting Nginx...
Error: Port 80 is already in use!

Oh, jadi itu penyebabnya!  Port 80 ternyata sudah dipakai, jadi container nggak bisa jalan.

 Biar lebih gampang membaca logs:

  • Melihat logs terbaru saja:

    docker logs --tail 10 web_server
    

    Ini bakal menampilkan 10 baris terakhir logs.

  • Melihat logs secara real-time (live streaming mode! ):

    docker logs -f web_server
    

    Ini akan menampilkan logs secara langsung saat container berjalan. Cocok buat debugging!

3. Contoh Masalah dan Solusinya

 Kasus 1: Container Tiba-Tiba Mati Setelah Dijalankan

Cek status container:

docker ps -a

 Hasil:

CONTAINER ID   IMAGE     STATUS                       NAMES
7a9c8d6e5f4b   nginx     Exited (1) 2 minutes ago    web_server

 Solusi: Cek logs untuk tahu penyebabnya:

docker logs web_server

 Hasil logs:

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

Oalah! Port 80 sudah dipakai oleh aplikasi lain. Solusinya? Jalankan container di port lain:

docker run -d -p 8080:80 nginx

 Kasus 2: Aplikasi di Dalam Container Error, Tapi Nggak Tahu Kenapa

Cek logs dengan live streaming biar bisa lihat error secara langsung:

docker logs -f app_container

 Hasil logs:

Database connection failed: Host not found

 Solusi:
Cek apakah container database-nya jalan:

docker ps

Kalau database nggak jalan, start dulu:

docker start database_container

 Kasus 3: Container Masih Jalan, Tapi Nggak Bisa Diakses

Cek status container dengan:

docker inspect web_server

 Hasil:

"State": {
    "Status": "running",
    "Running": true,
}

Artinya container hidup, tapi kenapa nggak bisa diakses? Coba cek port binding:

docker ps

 Hasil:

CONTAINER ID   IMAGE     PORTS
8f3a2b6d5c1a   nginx     0.0.0.0:80->80/tcp

Ternyata container jalan di port 80, bukan 8080! Solusinya:

docker run -d -p 8080:80 nginx

4. Kesimpulan: Logs Itu Penyelamat Hidup di Docker!

 Ringkasan Cepat:
  Cek container yang berjalan: docker ps
  Lihat semua container (termasuk yang mati): docker ps -a
  Cek status detail container: docker inspect <CONTAINER_ID>
  Lihat logs container: docker logs <CONTAINER_ID>
  Lihat logs secara real-time: docker logs -f <CONTAINER_ID>
  Menampilkan hanya beberapa baris logs terakhir: docker logs --tail 10 <CONTAINER_ID>

Kalau ngerti cara cek logs dan status container, hidup sebagai developer jadi lebih damai dan nggak gampang stres!

Post a Comment

0 Comments