Berinteraksi dengan Container
Berinteraksi dengan kontainer yang sedang berjalan adalah keterampilan wajib untuk proses debugging dan pemeliharaan aplikasi.
1️⃣ Docker Container Log
Untuk melihat log pada container:
docker container logs <nama/id_container>
Melihat Log Realtime
docker container logs -f <nama/id_container>
2️⃣ Docker Container Attach
Fungsi Docker container attach hampir sama dengan Docker Container Log yaitu melampirkan input, output, dan error standar terminal ke kontainer yang sedang berjalan. Dengan begitu, kita bisa melihat output atau mengendalikan kontainer secara interaktif.
docker container attach <nama/id_container>
Dengan melakukan attach kita bisa langsung melihat log container secara realtime.
3️⃣ Docker Container Exec
Docker Container Exec digunakan untuk menjalankan perintah pada container yang sedang berjalan.
docker container exec <nama/id_container> <command>
Contoh menjalankan perintah ls untuk melihat file dan folder dalam container nginx:
docker container exec nginx-web-server ls
Contoh lain menggunakan option -i -t (baca --help) masuk ke dalam perintah bash pada container:
docker container exec -it <nama/id_container> bash
-i(interactive): Menjaga koneksi tetap terbuka.-t(tty): Memberikan terminal virtual agar tampilannya seperti terminal biasa.
Gunakan bash jika sh tidak tersedia.
4️⃣ Copy File
Kita bisa mengirim file dari komputer host ke kontainer, atau sebaliknya, tanpa harus menggunakan jaringan atau FTP.
- Dari Host ke Container:
docker container cp index.html <nama_container>:/usr/share/nginx/html/
- Dari Kontainer ke Host:
docker container cp <nama_container>:/app/config.yml ./config_lokal.yml
5️⃣ Melihat Statistik Resource
Untuk mengetahui berapa banyak beban RAM dan CPU yang digunakan oleh kontainer, dapat menggunakan perintah:
docker container stats <nama_container>
6️⃣ Melihat Perubahan File System
Jika kita curiga aplikasi kita membuat file sampah atau mengubah konfigurasi secara diam-diam, gunakan perintah ini:
docker container diff <nama_container>
Keterangan:
- A: Added (file baru).
- C: Changed (file diubah).
- D: Deleted (file dihapus).