Gambar Docker bisa sangat besar, dan jika Anda sering bekerja dengan container, mungkin akan menghabiskan banyak ruang penyimpanan Anda. Kami akan membahas cara membersihkan gambar yang diunduh dan menghapus file lama yang tidak Anda perlukan.
Gambar Docker vs. Wadah Docker
Gambar Docker menangani datanya secara berbeda dari wadah. Gambar adalah file hanya-baca yang dibuat dari Dockerfiles dan didorong ke Docker Hub. Setiap kali Anda mengunduh versi baru, Docker harus mengunduh file untuk versi baru itu. Versi lama masih disimpan di drive lokal Anda.
Wadah dibuat dari gambar, dan biasanya memiliki sistem file dan volume sendiri yang dilampirkan padanya. Saat Anda menghentikan penampung, data apa pun yang tidak disimpan pada volume akan dihapus. Jadi, untuk membersihkan data yang digunakan oleh container, Anda hanya perlu menghentikannya dan menghapus volumenya.
Untuk membersihkan gambar, Docker menyediakan beberapa perintah untuk menjalankan pengumpulan sampah.
Memotong Gambar
Anda pasti akan berakhir dengan gambar yang tidak digunakan, apakah itu gambar versi lama, atau gambar dari wadah yang tidak aktif berjalan. Bagaimanapun, menghapus gambar biasanya tidak menimbulkan masalah—jika Anda membutuhkannya lagi, Docker dapat mengambilnya dari repositori jarak jauh.
Untuk melihat semua gambar yang tersimpan di sistem Anda, Anda dapat menggunakan perintah berikut:
docker image ls
Meskipun kelihatannya semua versi ini memakan banyak ruang dalam keluaran ini, versi yang berbeda disimpan secara bertahap, jadi hanya perubahan dari versi baru yang benar-benar disimpan di disk.
Anda dapat menghapus gambar secara manual dengan ID gambarnya:
docker image rm 3a8d8f76e7f8f
Namun, metode yang jauh lebih aman adalah dengan menggunakan prune
. bawaan perintah, yang akan menelusuri semua gambar untuk menemukan dan menghapus yang tanpa referensi aktif:
docker image prune -a
Menghilangkan -a
tag akan menyimpan gambar yang ditandai tetapi tidak digunakan. Dengan tanda tersebut, hanya gambar yang Anda gunakan secara aktif yang akan tetap ada.
prune
perintah akan memberi tahu Anda berapa banyak ruang yang dibebaskan, tetapi jika Anda ingin memeriksa secara manual berapa banyak penyimpanan yang digunakan Docker sebelum dan sesudah, Anda dapat menggunakan du -sh
pada direktori penyimpanan Docker:
sudo du -sh /var/lib/docker/
Direktori ini akan berada di C:ProgramDataDockerDesktop
di Windows dan ~/Library/Containers/com.docker.docker/Data/vms/0/
di macOS.