--- title: Docker description: "Container untuk menjalankan aplikasi dengan environment konsisten. Image, container, volume, dan network adalah istilah intinya." canonical: https://penasihathosting.com/wikihosting/docker type: wiki locale: id updated: 2026-10-29 author: Willya Randika --- # Docker ## Overview - **Summary:** Container untuk menjalankan aplikasi dengan environment konsisten. Image, container, volume, dan network adalah istilah intinya. - **Author:** Willya Randika ([profile](/penulis/willya-randika)) ## Article **Docker** adalah platform container yang mengemas aplikasi beserta dependensinya ke dalam **image**, lalu menjalankannya sebagai **container** yang terisolasi. Di hosting, Docker dipakai untuk menjalankan aplikasi, database, queue, atau tool internal dengan environment yang konsisten. ## Istilah inti | Istilah | Arti | | --- | --- | | **Image** | Template read-only berisi aplikasi dan dependensi | | **Container** | Instance berjalan dari image | | **Volume** | Penyimpanan persisten di luar siklus container | | **Network** | Jaringan virtual antar-container | | **Dockerfile** | Resep untuk membangun image | | **Compose** | Definisi beberapa container dalam satu file | ## Alur dasar ```bash docker build -t app-saya . docker run -d --name app -p 3000:3000 app-saya ``` Untuk data yang harus bertahan, pasang volume: ```bash docker run -d -v app-data:/var/lib/app app-saya ``` ## Yang perlu diperhatikan - **Container bukan VM.** Isolasi lebih ringan; jangan anggap sebagai batas keamanan penuh. - **Data harus di volume.** File di dalam container hilang saat container dihapus. - **Resource limit penting.** Tanpa batas CPU/RAM, satu container bisa menghabiskan VPS. - **Update image rutin.** Image lama menyimpan celah keamanan. - **Butuh RAM dan disk.** VPS kecil dengan banyak container bisa cepat kehabisan resource. - **Port dan reverse proxy.** Biasanya container mendengarkan di port internal, lalu Nginx/Caddy meneruskan traffic HTTPS. Setiap container memakai RAM dan disk. Di VPS 1–2 GB, jalankan hanya layanan yang benar-benar perlu, batasi memory, dan pantau disk image. Gunakan `docker system prune` secara berkala, tetapi jangan hapus volume yang masih dipakai. Untuk produksi, simpan image di registry dan deploy dengan versi yang jelas, bukan `latest`. Pisahkan database dari container aplikasi bila memungkinkan, dan jangan expose Docker socket ke publik. Catat port, volume, dan environment variable yang dipakai; uji healthcheck, siapkan rollback image, dan pantau penggunaan RAM. Simpan catatan upgrade, pantau log, dan periksa disk secara berkala. ## FAQ Tidak. Docker adalah cara mengemas dan menjalankan aplikasi; VPS adalah mesin tempat container berjalan. Data di filesystem container bisa hilang saat container dihapus. Gunakan volume untuk data yang harus bertahan. Bisa, asalkan image diperbarui, container tidak berjalan sebagai root, resource dibatasi, dan akses jaringan diatur.