Lebih Produktif dengan Docker

Katon Fergiawan B
6 min readOct 24, 2017

--

Docker adalah sebuah teknologi container software open source yang memungkinkan Anda untuk membangun, menguji, dan menyebarkan aplikasi terdistribusi dalam lingkungan yang terisolasi. Docker menyediakan virtualisasi ringan dengan overhead hampir nol. Dengan Docker, Elitery dapat mengoptimalkan Infrastruktur TI Perusahaan Anda, dengan menghilangkan guest OS atau Hypervisor serta biaya lisensinya. Anda juga akan dapat Merilis Software lebih cepat, Meningkatkan Produktivitas Pengembang, Memiliki Aplikasi Portable dan Mengurangi jumlah penyimpanan.

Berikut adalah beberapa manfaat untuk pengguna:

  • Docker merupakan inti dari strategi hybrid cloud, memberi kebebasan dalam memilih antara lingkungan lokal, private dan publik. Salah satu manfaat terbesar Docker adalah portabilitas. Selama beberapa tahun terakhir, semua penyedia komputasi awan terbesar, termasuk Amazon Web Services (AWS) dan Google Compute Platform (GCP), telah merangkul Docker dan menambahkan dukungan individu. Kontainer Docker dapat dijalankan dalam Amazon EC2 Instance dan Google Compute Engine, Server Rackspace atau VirtualBox, asalkan host OS mendukung Docker. Jika hal ini terjadi, sebuah kontainer yang berjalan pada Amazon EC2 Instance dapat degan mudah di porting antar lingkungan, seperti juga pada VirtualBox yang dapat mencapai konsistensi dan fungsi serupa. Hal ini memberikan tingkat abstraksi dari lapisan infrastruktur.Selain AWS dan GCP, Docker bekerja sangat baik dengan berbagai penyedia IaaS lain seperti Microsoft Azure, dan OpenStack, dan dapat digunakan dengan berbagai manajemen konfigurasi seperti Chef, Puppet, dan Ansible
  • Docker menyediakan rantai pasokan perangkat lunak dengan kelincahan, kontrol dan portabilitas untuk pengembangan aplikasi. Kontainer Docker memastikan konsistensi di beberapa siklus pengembangan dan rilis, standarisasi lingkungan. Di atas semua itu, wadah Docker bekerja seperti repositori GIT, yang memungkinkan untuk melakukan perubahan ke Image Docker dan mengendalikan versi. Misalkan, dalam melakukan upgrade komponen yang memecah seluruh lingkungan. Hal ini sangat mudah untuk dilakukan rollback ke versi sebelumnya melalui image Docker anda. Keseluruhan proses ini dapat diuji dalam beberapa menit. Bila dibandingkan dengan proses bakcup dan pembuatan image di VM, Docker bekerja jauh lebih cepat, dan memungkinkan untuk dengan cepat membuat pengulangan dan mencapai redundansi. Selain itu, peluncuran image Docker bisa secepat proses menjalankan mesin.
  • Docker memberikan perbaikan kuantitatif untuk pengiriman aplikasi melalui perubahan praktik devops. Docker memastikan aplikasi dan sumber daya yang terisolasi serta terpisah. Beberapa bulan yang lalu, Gartner menerbitkan sebuah laporan yang menyatakan kontainer Docker sebaik hypervisors VM dalam hal sumber daya untuk mengisolasi, tapi masih ada pekerjaan yang harus dilakukan dalam hal manajemen dan administrasi. Pertimbangkan skenario di mana anda menjalankan beberapa aplikasi pada VM. Aplikasi ini dapat berupa perangkat lunak kolaborasi tim (misalnya, RedBooth), Software pelacakan maslaah perangkat lunak (misalnya, Jira), Sistem manajemen identitas terpusat (misalnya, Crowd) dan sebagainya. Melihat semua aplikasi terebut berjalan pada port yang berbeda, anda harus dapat memanfaatkan meningkatkan aplikasi tersebut pada Apache dan Nginx sebagai reverse proxy.
  • Docker mendukung pengiriman arsitektur layanan mikro dan modernisasi aplikasi monolitik yang sudah ada. Dari sudut pandang keamanan, Docker memastikan bahwa aplikasi yang berjalan pada wadah yang benar-benar terpisah dan terisolasi dari satu sama lain, memberikan kontrol penuh atas majemen dan arus lalu lintas. Kontainer Docker tidak dapat melihat ke dalam proses yang berjalan di dalam kontainer lain. Dari sudut pandang arsitektur, setiap kontainer dapat mengatur sumber daya sendiri mulai dari pengolahan hingga ke jaringan. Sebagai sarana pengetatan keamanan, Docker menggunakan OS host mount point sensitif (misalnya, ‘/ proc’ dan ‘/ sys’) sebagai read-only mount point dan menggunakan file system copy-on-write untuk memastikan kontainer tidak bisa membaca data satu sama lain.

Berikut adalah beberapa manfaat untuk IT Management/Decision Maker:

  1. Konfigurasi Yang Simple

Pada virtualisasi docker, ketika kita membutuhkan sebuah VM docker, hanya dengan menjalankan satu baris perintah untuk menciptakan sebuah container yang dapat menjalankan images, images tersebut berisi sistem operasi yang dapat langsung digunakan, images tersebut pun dapat di download dari repository docker. Hal inilah yang membuat konfigurasi VM pada docker sangan simple dan dapat menghemat waktu instalasi sistem operasi.

2. Aplikasi Yang Terisolasi

Mungkin ada beberapa alasan yang membuat para developer beralih menggunakan docker, yaitu karena keamananya. Docker itu menggunakan sistem aplikasi yang terisolasi. Jika diibaratkan, container — container pada docker seperti sebuah komputer yang berada dibelakang router yang di NAT, sehingga container tersebut tidak langsung terhubung ke jaringan luar. Antar container pada docker juga dapat berjalan tanpa menggangu container lainnya. Hal inilah yang membuat docker sebagai virtualisasi yang handal.

3. Optimalisasi Resource

Docker sebagai alat virtualisasi sengat mengunggulkan efisiensi penggunaan resource hardware. Penggunaan resource hardware pada docker sangat efisien, dan tidak memakan banyak resource, sehingga ketika menjalankan banyak container pada sebuah host docker, host masih mampu menanganinya. Container yang berjalan pada satu mesin host yang sama akan berbagi pakai kernel sistem operasi, semuanya berjalan secara instant dan menggunakan lebih sedikit RAM. Images dibangun dari beberapa layer/lapisan file sistem dan berbagi file sistem yang umum, sehingga penggunaan harddisk dan proses download image lebih singkat dan efisien.

4. File System Protection

Docker menggunakan sistem proteksi file read-only mount point dan copy in write dengan tingkatan keamanan dari yang rendah hingga keamanan yang sangat tinggi. Dengan pemasangan sistem file sebagai Read-Only, kernel linux dapat dipertahankan dan pengguna pun aman tanpa resiko kegagalan file system.

5. Muti Cloud Platform

Salah satu manfaat terbesar dari docker yaitu portabiltas. Dalam beberapa tahun terakhir, semua penyedia layanan cloud seperti Amazon, Web Service, Google Compute Platform, Digital Ocean, Linode, Vultr, Rackspace dan lain — lain mulai mengadopsi docker sebagai platform virtualisasi, Container docker dapat dijalankan dalam sebuah mesin Amazon EC2, Google Compute Engine maupun pada berbagai cloud provider dengan sistem operasi linux yang beragam. Selain AWS dan GCP, Docker juga bekerja sangat baik dengan berbagai penyedia layanan laaS seperti Microsoft Azure, dan Openstack. Dengan berbagai alasan tersebut docker disebut sebagai Multi Cloud Platform yang sangat handal.

Konsultan IT Indonesia mulai memperkenalkan Efisiensi yang di dapat dari Docker. Dari sebuah hasil pengujian, bila dibandingkan denganVM Virtualbox, ketika 5 buah perangkat mesin virtual berbasis teks dengan memori 192 MB, Virtualbox memerlukan memori berkapasitas lebih dari 1 GB. Berbeda dengan Docker yang hanya memerlukan memori berkapasitas 27 MB untuk menjalankan 10 container berbasis teks. Tentu selisih kebutuhan memorinya sangat besar, bukan? Pengujian ini dilakukan terhadap mesin virtual yang baru saja di fresh instal.

Bagaimana dengan perkembangan dan eksistensi docker saat ini? Dalam praktiknya, penggunaan docker kian hari kian meluas. Hal ini dibuktikan dengan perkembangan docker yang cepat dan bahkan kini menjadi standard tool dengan basis container. Docker saat ini juga banyak diintegrasikan dengan project PaaS, misalnya saja seperti Deis, Dokku, Vagrant, dan Flynn. Sejumlah server farm terbesar saat ini didukung dengan docker guna tingkatkan performa. Pengembangan web-web besar seperti Twitter, Google, dan sejumlah platoform provider seperti dotCloud dan Heroku juga didukung teknologi container ini, bahkan pada skala ribuan atau jutaan container yang beroperasi secara paralel.

Docker juga menjadi salah satu jenis perangkat canggih yang mampu memaketkan aplikasi ke dalam container virtual secara independen. Dengan menggunakan deckor, pengguna akan jauh lebih fleksibel dalam menjalankan sebuah aplikasi dimanapun (dalam cloud pribadi, cloud umum, bare metal, dan lain sebagainya).

Dari keseluruhan informasi di atas, terlihat jelas bahwa Docker tentunya telah memberikan kontribusi besar di bidang IT, khususnya bagi para pengguna container virtual di dunia. Dan pastinya ada banyak sekali manfaat dari penggunaan dokcer ini. Untuk memenuhi kebutuhan masyarakat awam akan pengetahuan tentang docker, kini banyak konsultan IT yang menawarkan jasa konsultasi seputar docker kepada masyarakat yang berminat untuk memahami dan memanfaatkan docker untuk mendukung aktivitas sehari-hari mereka yang ada kaitanya dengan bidang informatika.

Kesimpulan:

Docker dapat meng-optimalisasi infrastruktur IT perusahaan anda dan juga meningkatkan kinerja pada programer serta sistem administrator. Dengan sistem kontainer, seluruh pekerjaan pebuatan aplikasi, modul, monitoring, serta manajemen infrastruktur dapat lebih cepat, efisien dan lebih aman.Dalam hubungannya dengan komputasi awan, manfaat yang disebutkan di atas menunjukkan bagaimana Docker adalah sebuah platform open source yang efektif.

Perusahaan di Indonesia semakin banyak yang mengadopsi Docker, terutama para penyedia jasa teknologi informasi dan perusahaan besar yang memiliki data center sendiri. Demikian diharapkan untuk instansi pemerintahan, keunggulan docker merupakan solusi penghematan anggaran belanja negara. Organisasi selalu mengevaluasi basis platform terhadap kemampuan mereka untuk memberikan fleksibilitas, kebebasan dan mengatasi siklus hidup aplikasi, baik untuk pengembangan maupun tim operasional TI.

Sekian Dan Semoga Bermanfaat . .

--

--