Berkembangnya teknologi virtualisasi yang sangat beragam sangat membantu sekali untuk para pengembang aplikasi dan sistem administrator.
Pengembang dapat dengan mudah mengembangkan suatu aplikasi dengan berbagai tools yang sudah tersedia.
Dari yang dulu nya kita harus meluangkan waktu untuk menyiapkan images dengan proses instalasi os hingga berbagai aplikasi yang dibawa sistem tersebut, tentu proses tersebut sangat melelahkan.
Bisa dibayangkan dengan banyaknya virtualisasi yang berjalan di sebuah server akan memberatkan sistem tersebut.
Tetapi semakin modern nya teknologi tersebut kini proses tersebut dapat dipersingkat dan sangat efisien dari berbagai langkah rumit yang memusingkan.
Teknologi container kemudian datang dan membawa beberapa perubahan. Dengan container, sebuah program ‘diikat’ beserta library-nya, file konfigurasi, dan seluruh hal yang dibutuhkannya.
Perbedaan yang sangat terlihat dibandingkan dengan virtualisasi adalah container memiliki ukuran file yang jauh lebih kecil karena tidak perlu menyiapkan sistem operasi secara penuh.
Dalam hal ini, pengembang biasa menyebutnya sebagai ‘lightweight’ platform.
Aplikasi yang berjalan menggunakan container pun jauh lebih cepat dan lebih efisien.
Docker adalah salah satu platform yang dibangun berdasarkan teknologi container.
Docker merupakan sebuah project open-source yang menyediakan platform terbuka untuk developer maupun sysadmin untuk dapat membangun, mengemas, dan menjalankan aplikasi dimanapun sebagai sebuah wadah (container) yang ringan.
[[img src=https://docs.docker.com/engine/article-img/architecture.svg alt=docker]]
Dengan sangat populernya docker, sebagian orang sering menganggap docker adalah sebutan lain untuk container.
Docker pertama kali dikembangkan oleh Solomon Hykes sebagai project internal di dotCloud bersama dengan beberapa koleganya seperti Andrea Luzzardi dan Francois-Xavier Bourlet.
Perilisan platform ini secara open-source dilakukan pada mei 2013 silam.
Docker terus berkembang hingga memiliki ribuan orang yang berkontribusi membuatnya menjadi lebih baik.Berbeda dengan virtualisasi yang mana aplikasi berjalan di atas hypervisor dan guest OS, docker dapat menjalankan aplikasi langsung tanpa kedua hal tadi.
Docker juga dilengkapi dengan fitur sandbox yang menjamin pengerjaan pengembang dan sysadmin tidak terganggu.
Sandbox pada istilah keamanan komputer adalah mekanisme pemisahan aplikasi atau program tanpa mengganggu host (isolasi).
Bagi pengembang, sandbox Menjamin aplikasinya dapat berjalan tanpa ada gangguan atas perubahan lingkungan host.
Sedangkan bagi sysadmin, menjamin host server yang dikelola tidak terganggu dan dapat melakukan update tanpa takut mengganggu aplikasi.
Dikutip dari situs resmi docker, pengembang dapat mengefektifkan waktu mereka dengan menghilangkan proses konfigurasi yang cocok dengan programnya.
Selain itu, berkat fitur sandbox, pengembang leluasa untuk berkreasi tanpa takut merusak programnya.
Terakhir docker menjamin program yang kita buat, akan selamanya berjalan seperti seharusnya.
Pemaketan aplikasi dan seluruh kebutuhannya, memastikan aplikasi berjalan lancer pada kondisi lingkungan apapun.
Sumber :
+ Docker.com
+ Wikipedia
+ fahmi.my.id/apa-itu-docker.html