Pengenalan Docker - Deny Listianto

February 3, 2018

Pengenalan Docker

Hai Semua,,, Kali ini kita akan belajar Docker. Docker?apa itu.. sebenarnya saya baru saja mengenal Docker saat belajar bereng Kulgram Docker-Aliansi Pengajar Administrasi Server oleh pak Samsul Ma'arif.

Baiklah mari kita mulai.

Docker

Docker?


Docker adalah Aplikasi open source yang menyediakan platform terbuka dalam bentuk teknologi virtualisasi berbasis wadah/container.

Manfaat utamanya adalah mengemas aplikasi di "Container," yang memungkinkannya portabel di antara sistem yang menjalankan sistem operasi Linux (OS).

Mirip seperti Virtual Machine (VM) namu lebih ringan karena Docker tidak membawa keseluruhan sistem operasi, melainkan berbagi sistem dengan host induknya.

Komponen Docker


Docker memiliki banyak komponen, setiap komponen itu saling membutuhkan satu sama lain, berikut adalah komponen pembentukan docker:

  • Docker Image, sebuah paket ringan yang berdiri sendiri dan dapat dieksekusi, yang mencakup semua yang dibutuhkan untuk menjalankannya perangkat lunak, termasuk kode, runtime, pustaka, variabel lingkungan, dan berkas konfigurasi.
  • Docker Container, adalah sebuah runtime dari sebuah image. Image akan berada di memori ketika benar-benar dieksekusi.
  • Docker Registry, merupakan sebuah server yang menyimpan image di publik/private repository agar dapat diakses oleh pengguna lain.
  • Docker File, merupakan sebuah skrip otomasi (builder) yang membangun sebuah image. Sebuah Docker file merupakan text atau skrip yang berisi semua perintah yang biasanya kita lakukan manual untuk membangun sebuah image.
  • Repository,Docker menggunakan kata ini mirip dengan yang digunakan pada Github dan source control system lainnya, namun jenis yang berbeda. Repository berupa ID untuk setiap image yang disimpan dalam registry. Ketika kita menjalankan perintah docker commit makan image itu akan kita beri nama dengan format namafile/nama_image.
  • Docker index terkait dengan Docker Hub Registry, meski keduanya memiliki fungsi yang berlainan. Index mengatur user account, permission, search, tagging dan hal lain yang tersimpan oada web interface public. Ketika kita melakukan eksekusi perintah docker run untuk menjalankan suatu docker image, hail itu digunakan untuk mencari data pada index bukan registry.

Selanjutnya, kita akan pelajari perbedaan antara VM (Virtual Machine) dengan Container.


VM (Virtual Machine) adalah perangkat lunak yang dapat mengisolasi sebuah mesin komputer serta dapat menjalankan semua program yang sama seperti pada komputer aslinya atau biasa disebut duplikat dari sebuah mesin komputer asli. Container dalam bahasa komputer adalah suatu teknologi yang dapat mengisolasi sebuah proses dari proses yang lainnya yang akan mengisolasi library dan aplikasi yang digunakan saja tanpa mengisolasi seluruh komponen seperti perangkat keras, kernel, sistem operasi, dan lain – lain.

VM (Virtual Machine)

Walaupun keduanya sama-sama berjalan pada virtualisasi, namun VM dan Container ini memiliki beberapa perbedaan. Diantaranya yaitu :

  • Salah satu perbedaan terbesar antara container dengan VM adalah container berbagi kernel sistem milik host dengan container lainnya. Sedangkan, VM yang memiliki sistem operasi masing-masing, tentu saja memiliki sistem kernel masing-masing pula. 
  • Container lebih efektif dan ringan dibandingkan dengan VM (Virtual Machine). Karena container hanya mengisolasi library dan aplikasi yang akan dijalankan saja. Berbeda dengan Virtual Machine yang mengharuskan untuk mengisolasi seluruh komponen seperti, perangkat keras, kernel, sistem operasi, dan lain – lain.
  • Container dapat melakukan efisiensi resource dengan sebaik – baiknya pada system. Berbeda dengan VM, Container ini dapat melakukan efisiensi penggunaan resource dengan sangat baik. Sehingga, ketika salah satu container sedang siap, maka container yang satunya bisa menggunakan resource milik container yang sedang iddle, begitupun sebaliknya.

Adapun perbedaan Lainya, yang lebih mudah dipahami :

Mesin Virtual (VM)Container
Representasi virtualisasi level perangkat kerasRepresentasi virtualisasi level sistem operasi
BeratRingan
Penyediaan lambatPenyediaan waktu-nyata dan skalabilitas
Performa terbatas Performa asli
Terisolasi penuh dan karenanya lebih aman Isolasi level proses dan karenanya kurang aman
Disqus Codes
  • To write a bold letter please use <strong></strong> or <b></b>
  • To write a italic letter please use <em></em> or <i></i>
  • To write a underline letter please use <u></u>
  • To write a strikethrought letter please use <strike></strike>
  • To write HTML code, please use <code></code> or <pre></pre> or <pre><code></code></pre>
    And use parse tool below to easy get the style.
Show Parser Box

strong em u strike
pre code pre code spoiler
embed

Notifications

Disqus Logo