Skip to main content

Masa Brooding Ayam

Pengenalan Docker (apa itu docker secara singkat)

Pengenalan Docker

Singkat-singkat aja ya. Lama klo dijelasin jentre satu2. Pertama dari kasus. Kasusnya adalah, ketika coder dgn berbagai latar belakang, skill dan alat tempur (laptop/PC dan OS nya).. Ketika setup environment untuk ngode, selalu ada kendala tidak kompatibel dsb, termasuk sampai implementasi / deployment di server. Sering terdengar “Jalan kok di komputer saya” .. 
Docker adalah virtual machine management, yg mana sebuah VM bisa dishare across coders sehingga semua coders selalu menggunakan image yang seragam. Nah perubahan2 pada image pun didistribusikan dan dikelola sebagaimana dikelolanya source code oleh GIT. Sehingga dapat dipastikan keseragaman sistem yg dipake tiap coders.
Docker muncul menyaingi Vagrant. Vagrant itu setiap imagenya full seperti VirtualBox, yang dikelola snapshotnya. Otomatis kalau VM yg dibuat banyak, bakal berat. Bedanya Docker, dia menggunakan teknologi Linux container LxC dan AuFS. LxC memastikan VM jalan tanpa virtualisasi / hypervisor. Sedangkan AuFS tidak memotret snapshot, tapi merekam delta/perubahan antar snapshot (sebagaimana git menyimpan delta perubahan source code). Intinya Docker lebih cepat (startup/bootnya saja hitungan milidetik) dan ringkas. Kelemahannya, VM yg dikelola cuma bisa linux.
To the point aja, kita coba Docker:
  1. Install
    Windows: https://docs.docker.com/installation/windows/
    Mac: https://docs.docker.com/installation/mac/
  2. Cobain. Buka shortcutnya yg ada di desktop, atau utk mac buka saja terminal
     docker run hello-world
  3. Pull salah satu image yg readily available. Misalnya centos. Docker akan unduh imagenya, sekitar 150MB. Gede ya? Ya tunggu saja :).
     docker pull centos
    Kalau pingin sekalian kerja, ya bisa pull image yg kita punya. Di situ sudah banyak setting yang dibuat.
    docker pull zaunaf/xond
  4. Image centos cukup kumplit. Kita coba command biasa dulu.
     docker run centos /bin/echo 'Halo Abah Kasep'
    atau jika image xond yg dipake:
    docker run zaunaf/xond /bin/echo 'Halo Abah Kasep'
    Dapat dilihat bahwa virtual os bekerja sangat cepat, tanpa lama2 booting langsung menjalankan program “echo” kemudian keluar kembali.
  5. Sekarang kita coba masuk shellnya.
     docker run -t -i centos /bin/bash
    atau jika image xond yg dipake:
    docker run -t -i zaunaf/xond /bin/bash
    Coba main2 di situ, eksplorasi si image dengan df, fstab, ls, dsb2.
  6. Sekarang coba buat perubahan di image yang sedang anda mainkan. Misalnya buatlah file di /root.
    bash$ touch /root/file_baru.txt
  7. Kemudian keluarlah dari shell
    bash$ exit
  8. Coba masuk kembali
    docker run -t -i centos /bin/bash
  9. Cek lah ke /root. Apakah file tadi masih ada ?
    bash$ ls -la /root
    Ternyata filenya HILANG !!!
  10. Jangan kuatir. File tsb bukanlah hilang. Yang anda lakukan terakhir tadi adalah membuat “container” baru. Snapshot kalau di bahasa VMWare/Virtualbox. Bayangkan anda punya sebuah VMDK atau VDI, anda gandakan, kemudian anda play, lakukan perubahan, kemudian pause. State “paused” tadi adalah container. Jika anda buat lagi VM baru, dgn VMDK/VDI duplikatnya, maka anda kembali dari kondisi awal. Nah VMDK / VDI tadi, itulah image. Sebelum lanjut anda harus mengerti konsep container ini.  Semua container yg pernah anda bikin, dapat dilihat dengan perintah berikut:
    docker ps -a
    Perhatikan hasilnya. Contohnya seperti ini :
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    c288a04382c0 zaunaf/xond:latest /bin/bash 4 hours ago Exited (127) 4 seconds ago berserk_engelbart
    303b56360f80 zaunaf/xond:latest /bin/bash 4 hours ago naughty_carson
  11. Ada dua container yang anda buat.. Yang anda tambahkan file tadi mungkin yang paling bawah. Setiap container otomatis diberi ID, nah container yg saya maksud tadi adalah yg id nya 303b56360f80. Perhatikan kolom paling kanan, “naughty_carson” .. Itu adalah nama yang otomatis diberikan docker pada tiap container. Nah hebatnya, anda bisa kembali ke kondisi yang anda buat tadi. Untuk kembali ke container di mana anda telah buat perubahan, jalankan command berikut:
    docker start naughty_carson
    Setelah itu masuklah kembali meneruskan shell anda tadi
    docker attach naughty_carson
    Tekan enter setelah itu, maka anda akan kembali ke bash. Periksa file yg anda buat pertama, apakah ada?
    bash$ ls -la /root
    Ternyata ada !! Nah seharusnya dengan eksperimen sederhana ini anda dapat mulai memahami konsep docker yang memang sepertinya agak membingungkan.
Masih banyak materi mengenai docker, misalnya bagaimana menjalankan service, mapping portnya, manajemen update docker yang seperti git, dsb. Insya Allah di post-post berikutnya.

sumber copas : https://subcoder77.wordpress.com/2014/08/14/pengenalan-docker/

Comments

Popular posts from this blog

Pengertian DataBase, MySQL dan phpMyAdmin

Pengertian DataBase, MySQL dan phpMyAdmin Pengertian DataBase DataBase adalah kumpulan informasi yang disusun berdasarkan cara tertentu dan merupakan suatu kesatuan yang utuh. Dengan sistem tersebut data yang terhimpun dalam suatu database dapat menghasilkan informasi yang berguna. Asal Mula Istilah Database Istilah “Database” berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal di luar bidang elektronika, postingan saya kali ini mengenai database komputer. Catatan yang mirip dengan database sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi dan sekumpulan data yang berhubungan dengan bisnis. Konsep Dasar Database Konsep dasar dari database adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Sebuah database memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Skema menggambarkan obyek yang diwakili suatu database, dan hubungan di antar...

Belajar git Melalui Bitbucket

Git praktek seteleh kita tahu apa itu git dan tahu perintah-perintah git bagi yang belum cek disini maka sekarang kita akan coba praktekan perintah-perintah git tersebut dalam pembuatan project sederhana. Kita buat aturan dasar Project ini. 1. Nama project = belajar_ahmad; 2. Kita menggunakan bitbucket 3. Kita asumsikan kita sudah punya akun bitbucket sekarang kita siap membuat project baru kita sekarang Login dulu ke bitbucket kita. Setelah login klik Create yang ada di paling atas disamping kata Bitbucket Dan masukan isian-isian dengan benar, contoh gambar: Setelah itu kita akan buat tempat penyimpanan project di komputer kita. Sebagai contoh saya buat polder project nama harus sama dengan nama project. Misal : project belajar_ahmad di simpan di. /var/www/belajar_ahmad/ Buka aplikasi git bash (untuk window) atau Buka terminal (untuk linux) Masuk directori polder yang telah ki...

Download Ebook Algoritma & pemograman RINALDI MUNIR

Pemrograman komputer sudah menjadi kebutuhan penting di era teknologi infonnasi ini, Mesldpun paket program komersil sudah banyak tersedia untuk membantu menyelesaikan masalah, namun membuat program sendiri untuk kebutuban spesiflk tetap diperlukan, Program komersll tldak dapat menyelesaikan masalah yang beraneka ragam dan kompleks. Itulah sepenggal kata pengantar dari ebook yang aka saya bagikan.. RINALDI MUNIR siapa yg tidak kenal dengan penulis buku ini.. Algoritma & pemograman BAHASA PASCAL dan C Edlsl Revisi langsung saja saya bagikan linknya.. link download pindah disini  cibatok.cf