DEV Community

Cover image for Install Docker
erfandwi
erfandwi

Posted on

Install Docker

Docker adalah aplikasi yang memudahkan proses pengelolaan proses aplikasi dalam containers.
Containers memungkinkan Anda menjalankan aplikasi dalam proses dan sumber daya yang terisolasi.
Mereka mirip dengan mesin virtual, tetapi kontainer lebih portabel, lebih ramah sumber daya, dan lebih bergantung pada sistem operasi host.

Instalasi Docker

On Debian/Ubuntu systems:

curl -fsSL https://get.docker.com | sh
sudo systemctl enable --now docker
Enter fullscreen mode Exit fullscreen mode

On RHEL-based systems (e.g. Rocky Linux 9):

sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-ce-rootless-extras docker-buildx-plugin
sudo systemctl enable --now docker
Enter fullscreen mode Exit fullscreen mode

Menambahkan Pengguna ke Grup Docker

sudo groupadd docker 2>/dev/null || true
sudo usermod -aG docker $USER
Enter fullscreen mode Exit fullscreen mode

Catatan: Setelah menjalankan perintah di atas, silakan keluar (logout) dan masuk kembali agar perubahan grup pengguna diterapkan.

Cek apakah user sudah masuk ke grup docker

groups
Enter fullscreen mode Exit fullscreen mode

Contoh output:

web1 docker
Enter fullscreen mode Exit fullscreen mode

Pastikan nama grup docker muncul dalam daftar grup user Anda.

Test docker tanpa sudo

docker run hello-world
Enter fullscreen mode Exit fullscreen mode

Jika berhasil, Anda akan melihat pesan:

"Hello from Docker!"

Jika muncul error permission, cek izin file socket Docker.

ls -l /var/run/docker.sock
Enter fullscreen mode Exit fullscreen mode

Contoh output yang benar:

srw-rw---- 1 root docker 0 May 18 14:31 /var/run/docker.sock
Enter fullscreen mode Exit fullscreen mode

Pastikan file tersebut dimiliki oleh user root dan grup docker, serta grup memiliki izin baca dan tulis (rw-).

(Opsional) Mengatur Izin Socket Docker

⚠️ Tidak disarankan untuk lingkungan produksi karena alasan keamanan.

sudo chmod 666 /var/run/docker.sock
Enter fullscreen mode Exit fullscreen mode

Perintah Dasar Docker

Search images

docker search nginx
Enter fullscreen mode Exit fullscreen mode

Download image

docker pull nginx
Enter fullscreen mode Exit fullscreen mode

Show images

docker images
Enter fullscreen mode Exit fullscreen mode

Running container

docker run -it ubuntu
Enter fullscreen mode Exit fullscreen mode

Perintah ini akan menjalankan container Ubuntu dalam mode interaktif (-it).

List containers

docker ps -a
Enter fullscreen mode Exit fullscreen mode

Gunakan opsi -a untuk melihat semua container, termasuk yang sudah berhenti.

Manage containers

docker start 0596bd489a2d
Enter fullscreen mode Exit fullscreen mode

Gunakan perintah berikut untuk mengelola container:

  • docker start <container_id> ΓÇö Menjalankan container
  • docker stop <container_id> ΓÇö Menghentikan container
  • docker restart <container_id> ΓÇö Me-restart container

Inspect containers

docker inspect 0596bd489a2d
Enter fullscreen mode Exit fullscreen mode

Menampilkan Informasi Tertentu dari Semua Container

docker inspect -f '{{.Name}} - {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -aq)
Enter fullscreen mode Exit fullscreen mode

Perintah di atas menampilkan nama dan alamat IP masing-masing container.

Docker Compose

Berikut adalah contoh file docker-compose.yml dengan opsi pull_policy:

services:
  app_always:
    image: nginx:latest
    deploy:
      update_config:
        failure_action: rollback
      rollback_config:
        failure_action: continue
    pull_policy: always
Enter fullscreen mode Exit fullscreen mode

Pada contoh di atas, opsi pull_policy menentukan bagaimana Docker menangani penarikan (pull) image dari registry. Nilai yang dapat digunakan antara lain:

  • always: Selalu menarik (pull) image dari registry, meskipun sudah tersedia secara lokal.
  • missing: Menarik image hanya jika image tersebut tidak tersedia di sistem lokal.
  • never: Tidak akan menarik image dari registry; hanya menggunakan image yang sudah ada secara lokal.

Catatan: pull_policy adalah fitur yang diperkenalkan pada versi Docker Compose v2.20 ke atas. Pastikan Anda menggunakan versi Compose yang mendukung opsi ini.

Top comments (0)