3. Docker Command Perintah Docker Dasar + Use Case Perintah Fungsi Utama Penjelasan Mudah Contoh Use Case docker run Menjalankan container Seperti menyalakan mesin dari cetakan (image) Menjalankan web server seperti Nginx, Node.js docker ps -a Melihat semua container Menampilkan semua container, baik aktif maupun mati Cek container yang gagal jalan atau sudah stop docker exec Masuk ke dalam container Seperti masuk ke terminal dari komputer virtual (container) Debug aplikasi yang error dari dalam docker logs Melihat log container Melihat output/error yang terjadi dalam aplikasi Melihat kenapa web app gagal jalan docker build Membuat image dari Dockerfile Compile semua konfigurasi dan source code jadi image Build web app dari source code lokal docker images / docker rmi Melihat & hapus image Lihat semua image lokal dan hapus yang tidak dipakai Bersih-bersih image lama docker stop / docker rm Hentikan dan hapus container Stop container yang sedang berjalan, lalu hapus Bersih-bersih container yang tidak aktif docker volume Kelola volume (penyimpanan) Simpan data yang tetap ada walau container dihapus Menyimpan data MySQL agar tidak hilang docker network Kelola jaringan antar container Hubungkan container seperti jaringan LAN Web app bisa akses database di container lain docker compose Jalankan beberapa container sekaligus Jalankan 1 set aplikasi (web + db + cache) dalam 1 perintah Deploy project: React + Node.js + MongoDB 1. Jalankan Nginx (web server) docker run -d --name web-nginx -p 8080:80 nginx Menjalankan Nginx dan membuka port 8080 di komputer lokal. 2. Lihat semua container (aktif dan tidak aktif) docker ps -a Untuk mengecek container mana yang berjalan atau sudah berhenti. 3. Masuk ke dalam container docker exec -it web-nginx bash Seperti buka terminal di dalam container Nginx. 4. Lihat log container (misalnya container Node.js) docker logs web-node Lihat error atau output dari aplikasi kita. 5. Build image dari Dockerfile docker build -t myapp:v1 . Bangun image bernama  myapp:v1 dari Dockerfile di folder saat ini. 6. Lihat dan hapus image docker images docker rmi myapp:v1 Cek semua image yang ada lalu hapus image yang tidak dipakai. 7. Stop dan hapus container docker stop web-nginx docker rm web-nginx Matikan dan hapus container Nginx. 8. Gunakan volume untuk database docker volume create dbdata docker run -d --name mysql-db -e MYSQL_ROOT_PASSWORD=admin -v dbdata:/var/lib/mysql mysql Volume  dbdata menyimpan data MySQL agar tidak hilang walau container dihapus. 9. Buat jaringan khusus docker network create webnet Container yang dibuat di jaringan ini bisa saling komunikasi seperti dalam LAN. 10. Jalankan semua service dengan docker-compose Isi file  docker-compose.yml : version: '3' services: web: image: nginx ports: - "8080:80" db: image: mysql environment: MYSQL_ROOT_PASSWORD: admin Jalankan: docker-compose up -d  Menjalankan Nginx dan MySQL sekaligus dengan satu perintah. Perintah Maintenance Docker Perintah Fungsi Penjelasan Mudah docker system df Lihat pemakaian storage Seperti df di Linux, tapi khusus Docker docker system prune -a Hapus semua yang tidak dipakai (container/image/volume) Bersih-bersih total docker image prune / docker container prune Hapus image/container tidak terpakai Pilih bersih-bersih bagian tertentu docker inspect Lihat detail konfigurasi container/image Untuk troubleshooting atau melihat pengaturan dalamnya docker stats Lihat penggunaan CPU/RAM per container Pantau resource tiap container docker cp Copy file ke/dari container Untuk backup log, atau copy konfigurasi docker login/push/pull Akses Docker registry Upload/download image ke registry (Docker Hub, GitLab, dsb) Contoh Maintenance 1. Lihat disk usage Docker docker system df 2. Hapus semua yang tidak digunakan docker system prune -a 3. Copy file dari container ke host docker cp web-nginx:/etc/nginx/nginx.conf ./nginx.conf 4. Lihat penggunaan CPU/RAM container docker stats 🐳 Docker Cheatsheet Perintah Dasar Docker Perintah Fungsi Contoh docker run Jalankan container docker run -d -p 8080:80 nginx docker ps Lihat container aktif docker ps docker ps -a Lihat semua container docker ps -a docker exec Masuk ke dalam container docker exec -it nama_container bash docker logs Lihat log container docker logs nama_container docker stop Hentikan container docker stop nama_container docker rm Hapus container docker rm nama_container docker images Lihat semua image docker images docker rmi Hapus image docker rmi nama_image docker build Build image dari Dockerfile docker build -t nama_image:v1 . Volume & Data Persistence Perintah Fungsi Contoh docker volume create Buat volume baru docker volume create dataweb -v volume:/path Mount volume ke container -v dataweb:/usr/share/nginx/html docker volume ls Lihat semua volume docker volume ls docker volume rm Hapus volume docker volume rm nama_volume Network antar Container Perintah Fungsi Contoh docker network create Buat network baru docker network create mynet --network mynet Hubungkan container ke network docker run --network mynet ... docker network ls Lihat daftar network docker network ls docker network inspect Lihat detail network docker network inspect mynet Docker Compose File docker-compose.yml : version: '3' services: web: image: nginx ports: - "8080:80" db: image: mysql environment: MYSQL_ROOT_PASSWORD: admin Perintah Fungsi docker-compose up -d Jalankan semua service docker-compose down Hentikan dan hapus semua container docker-compose ps Lihat status container Maintenance & Cleanup Perintah Fungsi docker system df Cek penggunaan storage docker system prune -a Bersihkan semua yang tidak dipakai docker image prune Bersihkan image tak terpakai docker container prune Bersihkan container mati docker volume prune Bersihkan volume tak terpakai docker stats Lihat pemakaian CPU & RAM docker inspect Lihat metadata container/image docker cp Copy file ke/dari container Interaksi dengan Docker Registry Perintah Fungsi Contoh docker login Login ke Docker Hub docker login docker pull Download image docker pull nginx docker push Upload image docker push user/nama_image Shortcut Paling Penting Tujuan Perintah Jalankan web server docker run -d -p 8080:80 nginx Masuk ke terminal container docker exec -it nama_container bash Lihat semua container docker ps -a Hapus semua container & image tak terpakai docker system prune -a