Note
Pernah ngalamin aplikasi jalan mulus di laptop sendiri, tapi pas di-deploy ke server malah error? Frustrasi banget, kan? Di sinilah Docker jadi penyelamat hidup kita para developer.
Biar gak pusing nyari contekan sana-sini, ini rangkuman lengkap seluruh perintah utama Docker yang dikemas santai, langsung ke inti, dan siap kamu comot ke blog pribadi.
Sebelum masuk ke baris perintah terminal, bayangkan Docker seperti kotak kontainer logistik kapal laut:
Urusan cetak biru aplikasi dan resep dasar.
docker build -t nama-app:v1 . — Bikin image baru dari file Dockerfile di folder saat ini.docker images — Menampilkan daftar semua image lokal yang tersimpan di komputer.docker pull [image] — Download image dari Docker Hub ke komputer lokal.docker push [image] — Upload image bikinan kamu ke Docker Hub.docker rmi [id-image] — Hapus image lokal yang sudah tidak terpakai.docker inspect [image] — Bedah isi metadata dan konfigurasi detail dari sebuah image.docker history [image] — Lacak jejak riwayat pembuatan layer dari sebuah image.docker save -o file.tar [image] — Bungkus image jadi satu file arsip (.tar).docker load -i file.tar — Ekstrak file arsip .tar balik jadi image Docker.docker tag [lama] [baru] — Bikin label alias baru buat image.docker image prune — Bersihkan image sisa yang tidak memiliki nama (dangling images).Urusan mengelola aplikasi yang sedang menyala atau mati.
docker run [image] — Bikin dan langsung nyalakan container baru (biasanya dikombinasikan dengan -d dan -p).docker ps — Cek daftar container yang sedang aktif atau menyala.docker ps -a — Cek seluruh container, baik yang aktif maupun yang sudah mati.docker stop [id/nama] — Matikan container secara elegan (graceful stop).docker start [id/nama] — Nyalakan lagi container yang sebelumnya mati.docker restart [id/nama] — Reboot container (matikan sebentar lalu nyalakan lagi).docker rm [id/nama] — Hapus container yang sudah tidak aktif dari harddisk.docker kill [id/nama] — Hentikan paksa container yang macet (cabut colokan instan).docker exec -it [id/nama] bash — Masuk ke dalam terminal atau shell container yang sedang berjalan.docker logs [id/nama] — Cek catatan log atau pesan error dari aplikasi di dalam container.docker stats — Pantau pemakaian CPU, RAM, dan network container secara real-time.docker cp [asal] [tujuan] — Salin file antara komputer lokal dan container.docker port [id/nama] — Cek pemetaan port antara host dan container.docker top [id/nama] — Lihat proses program apa saja yang sedang berjalan di dalam container.docker pause / docker unpause — Jeda sementara atau lanjutkan kembali aktivitas container.docker rename [lama] [baru] — Ganti nama container agar lebih mudah diingat.docker commit [id] [nama] — Ubah kondisi container yang sedang berjalan jadi image baru.docker container prune — Bersihkan semua container yang statusnya mati sekaligus.Urusan menyimpan data agar tetap aman dan tidak ikut terhapus saat container dihapus.
docker volume create [nama] — Bikin wadah penyimpanan data khusus.docker volume ls — Lihat daftar volume data yang ada.docker volume inspect [nama] — Cek jalur folder asli tempat data volume disimpan di host.docker volume rm [nama] — Hapus volume data secara permanen.docker volume prune — Bersihkan semua volume yang sedang menganggur tidak dipakai container.Urusan jaringan kabel virtual agar antar-container bisa saling berkomunikasi.
docker network create [nama] — Bikin jaringan privat baru.docker network ls — Lihat daftar jaringan yang tersedia.docker network inspect [nama] — Cek detail container siapa saja yang bergabung di jaringan tersebut.docker network connect [net] [container] — Masukkan container ke jaringan privat.docker network disconnect [net] [container] — Keluarkan container dari jaringan.docker network rm [nama] — Hapus jaringan privat.docker network prune — Bersihkan jaringan yang sepi dan tidak terpakai.Satu perintah untuk menjalankan banyak container sekaligus (Web + Database + Redis).
docker compose up -d — Baca file docker-compose.yml lalu nyalakan semua layanan di background.docker compose down — Matikan dan bersihkan seluruh layanan, network, serta compose terkait.docker compose ps — Cek status layanan compose yang sedang berjalan.docker compose logs -f — Pantau log gabungan dari semua layanan aplikasi secara real-time.docker compose build — Build ulang image untuk layanan-layanan compose.docker compose restart — Reboot massal semua layanan compose.docker login / docker logout — Masuk atau keluar dari akun Docker Hub.docker search [keyword] — Cari image buatan orang lain langsung dari terminal.docker system df — Cek kapasitas harddisk yang dihabiskan oleh Docker.docker system info — Cek spesifikasi engine Docker di mesin kamu.docker system prune -af --volumes — Pemusnah massal: Bersihkan sisa container mati, cache, dan volume kosong untuk mengembalikan ruang penyimpanan komputer.| Skenario Kebutuhan | Perintah Kombinasi (One-Liner) | Studi Kasus Nyata & Penjelasan |
|---|---|---|
| Web Server Abadi | docker run -d -p 80:80 --name web --restart always nginx | Deploy NGINX untuk toko online. Jika server VPS tiba-tiba restart karena mati lampu, website akan otomatis hidup kembali tanpa dinyalakan manual. |
| Linux Sekali Pakai | docker run --rm -it ubuntu bash | Ingin latihan mengetik perintah terminal Linux di Windows tanpa meninggalkan file sampah. Begitu ketik exit, container langsung musnah bersih. |
| Masuk Cepat ke Container Terakhir | docker exec -it $(docker ps -lq) bash | Baru saja membuat container baru dan malas menyalin ID-nya yang panjang. Perintah ini otomatis memasukkanmu ke container terakhir yang dibuat. |
| Pantau Log Error Live | docker logs -f --tail 50 web | Aplikasi web mengalami error, langsung pantau 50 baris catatan error terbaru secara real-time di terminal untuk debugging cepat. |
| Backup Volume Aman | docker run --rm -v my_vol:/data -v $(pwd):/backup ubuntu tar czf /backup/db.tar.gz -C /data . | Membuat arsip .tar.gz dari data database di dalam volume Docker agar tersimpan di folder lokal sebelum server di-update. |
| Bersih-Bersih Total Laptop Lemot | docker stop $(docker ps -aq) && docker system prune -af --volumes | Laptop mulai ngadat karena memori penuh sisa cache testing. Perintah ini mereset dan membersihkan seluruh sampah Docker sampai bersih. |
a1b2), asalkan kodenya sudah unik.exec atau run -it), cukup ketik exit untuk kembali ke terminal utama tanpa mematikan containernya.