Pada diskusi kemarin kita membahas konsep dari Docker, diskusi kali ini kita akan membahas perintah perintah dasar docker yang perlu kita ketahui.
Review
Kita telah membahas instalasi Docker, menjalankan container menggunakan docker run , mendownload image menggunakan docker pull dan beberapa perinth yang mendukungnya.
- docker Version
Digunakan untuk melihat versi docker yang kita pakai.
- docker run [nama image]
Untuk menjalankan image instance dari image di dalam container, Jika image ada damrespository locakmaka image dijalanakan jika tidak ada maka imageakan di download dulu dari respository public.
- docker pull [nama image]
untuk mendownload image kedalam respository local, tetapi image tidak akan dijalankan.
- docker help
Melihat Cheatsheet bawaan dari docker.
- docker ps
melihat container aktif yang ada, jika perintah ini ditambah dengan perintah all (docker ps -a), maka akan menampilkan container aktif danyang tidak aktif.
Pada dasarnya perintah docker akan seperti di bawah ini :
docker [OPTIONS] COMMAND [arg...]
Command-line lainya
Sebelum saya lupa, menurut dokumen docker, Docker Image adalah template yang aksesnya hanya Read-Only. Dan Merupakan kumpulan dari componen (misalkan, Os, Web Server, dan lainlain) yang merupakan pondasi dari Container
Setelah kita mereview beberapa command-line, kita akan melihat beberapa command-line lain, seperti :
- Menjalankan Containe Secara interactive
Pada diskusi sebelumnya kita pernah mencoba menjalankan containerdengan perintah run, kai ini kita akan menjalankan containerlagi tetapi dengan mode interactive dengan perintah --interactive --tty, short syntaxnya -i -t , jika dipedekan lagi menjadi -it. untuk keluar dari interactive mode menggunakan ctrl+p diikuti ctrl+q bisa juga dengan exit pada terminal
misalnya : docker run -i -t ubuntu:18.04
- Start, Stop, Restart
fungsi dari start, stop, restart sesuai dengan namanya, perintahnya adalah
docker [strart | stop |r estart] [Container name | Container ID] yang perlu dilakukan kita perlu melihat dulu container yang ada dengan docker ps atau docker d -a, jika ada container yang aktif kita bisa menonaktifkan dengan perintah docker stop namaContainer atau sebaliknya jika kita ingin mengatifkan container kitabisa menggunakan perintah
docker start namaContainer. Perintah restart merupakan gabungan perintah stop an start.
- Mencari Repository di Docke Hub
Untuk mencari repository di docker hub docker search [Keyword], hasilnya akan menamplkan list dari repository yang berhubungan dengan keyword yang kita cari. Dan bisa digunakan untuk mengunduh repository sesuai namanya
misalnya : docker search yii, docker search mysql
- Perintah lainya
Command line di docker sebenarnya sangat banyak dan kita bisa melihat melalui fungsi help dari docker. Yang ingin kita diskusikan di point ini adalah kita bisa mengabungkan beberapa perintah di docker, kita mengetahui perinta untuk melihat list semua Container ID dengan docker ps -a -q.
untuk menonaktifkan semua kontainer yang aktif kita bisa menggunakan perintah:
docker stop $(docker ps -q)
jika kita inginmenghapus semua Container kita bisa menggunakan perintah di bawah ini :
docker rm $(docker ps -aq)
Penutup
Pada seri ini kita tidak membahas Docker secara mendalam, hanya beberapa perintah sederhana saja. Hapan pada seri ini sederhana saja hanya membuka sedikit wawasan tentang Docker, sehingga jika kita ingin mempelajari tentang docker melalui tutorial tutorial yang banyak bertebaran kita mudah untuk mengikutinya, Karena pembahasan docker cukup luas. Mudah mudahan pada kesempatan lainya (Diluar seri ini) kita akan membahas topik tentang docker lagi. Terima Kasih, selamat bertualang di Dunia containerization platform.
Pada diskusi sebelumnya, kita telah membahas cara menggunakan Docker. Mulai dari instalasi, menggunakan perintah run dan pull, dan juga beberapa perintah lainya. Diskusi kali ini kita akan membahas beberapa hal seputar Docker.
Docker dari sudut pandang lain (BigPicture dari newbie)
Sebelum kita Docker lebih lainjut. Saya ingin membahas sedikit tentang Docker jika kita melihatnya dari sudut pandan yang lain.
Kadang kita bingung mendengar istilah istilah di dunia container (atau istilah kerenya Container Runtime Environments) ini , mungkin selain Docker ada juga container container yang mirip mirip, misalnya rkt, Mesos Containerizer, OpenVZ dan lain-lain. Balik lagi ke Docker, istilah docker misalnya image, container, registry dan lain lain yang akan membuat kita (terutama saya), menjadi bingung dan akhirnya malas untuk memcoba Docker dan lainya yang mirip.
Karena itu untuk lebih memahami istilah istilah Docker, dalam diskusi ini saya ingin membahas Docker jika kita melihat Docker dari sudut pandang OOP (Object Oriented Programing).
Pertama istilah yang umum adalah Docker registries. Dalam Docker, registry adalah tempat untuk menyimpan image, registry ini bisa berupa registry local atau registry public yang secara default adalah Docker Hub. Dalam pandangan saya, Jika kita masukan dalam dalam paradigma OOP, registry ini bekerja seperti Class, Jika dalam OOP adalah class yang menghasilan object, begitu juga registry yang akan menghasikan image yang disimpanya.
Kedua Image, produk (bisa berupa Os, WebAppdan lain lain) yang disimpan dalam registry. Image ini bisa berupa image lokal atau image public. Dalam sudut pandang OOP, image ini seperti Object. Sama seperti Object, jika object merupakan merupakan representasi dari kumpulan instance. Begitu pula image yang merupakan representasi dari sekumpulan container.
Ketiga, Container merupakan image yang sedang berjalan. Dalam pandangan OOP instance merupakan object yang berjalan dan mempunyai nilai yang pasti, begitu pula container. container merupakan image yang sedang berjalan dan mempunyai nilai yang pasti minimal Container ID (Dalam Docker).
Kesimpulan
Pada diskusi singkat kali ini, kita membahas Konsep dari Docker jika kita melihatnya dari sudut pandang yang lain yang kita lebih mengerti. Pada diskusi selanjutnya kita akan membahas perintah perintah Dasar yang berhubungan dengan Container.

Docker !!! , Docker..., Docker.... Ah Bikin Pusing Aja
Kenapa Docker ??
Pertama tau docker, komen saya ah apaan sih ? rasanya koq cuma bikin ribet aja, paling juga strategi marketing atau apalah yang mikirnya negatif. Tapi Karena sering kebaca di readme.md akhirnya jadi penasaran juga. Nyesel juga sih, kenapa dulu gak langsung coba. Udah dulu curhatnya, ok sekaran lebih baik kita langsung aja bahas Dockernya aja.
Docker jika menggunakan bahasa simpelnya adalah sebuah produk yang bekerja sebagai kontainer yang dapat menyimpan unit perangkat lunak( aplikasi kita) beserta kode dan semua dipendesinya, sehingga kita bisa dengan mudah memindahkan aplikasi dari satu komputer ke komputer lain tanpa perlu menginstall atau menyeting ulang semua perangkat lunak pendukung aplikasi kita. Analoginya sama seperti kontainer biasa yang dapat diisi apa saja yang kita perlukan, hingga jika pindahkan dari satu ruang ke ruang lain akan mudah membawanya, .
A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another. A Docker container image is a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries and settings.
Instalasi Docker
Docker bisa diinstal di Os apa saja dari mula MacOs, Linux, Windows dan lain lain. Kali ini Kita akan mencoba membahas cara penginstalan docker di windows khususnya windows 10, untuk di windows lainya syarat utama yang diperlukan untuk menginstal Docker di sistem operasi windows adalah fitur windows Hyper-V harus aktif, karena Docker akan berjalan di dalam virtual machine.
Jika Hyper-V sudah terpasang maka untuk menginstal Docker, kan sangat mudah :
- Pertama unduh terlebih dahulu Docker Desktop di link ini https://www.docker.com/products/docker-desktop.
- Setelah itu kita dapat menginstall docker seperti kita menginstal aplikasi window biasa.
- Untuk membuka Docker kita juga hanya perlu mengklik shorcut docker dari start menu, kita pelu menuggu beberapa saat hingga Docker Destop terbuka.
- Langkah selanjutnya, meskipun dapat di lewati, lebih baik kita mendaftar dahulu di Docker Hub.
- Setelah semua langkah di atas di lakukan kita bisa menjalankan Docker melalui Command Promp windows atau WindowsPowerShell. catatan : Contoh Contoh di pembahasan kita akan menggunakan PowerShell.
Link lengkap untuk instalasi docker di
Memulai Docker
Seperti memulai mempelajari bahasa pemrograman baru, cara termudahnya untuk mencoba adalah dengan mumbuat hello-world, Docker juga seperti itu pada awalnya kita akan mencoba menjalahkan perintah Docker dengan Hello World.
Pertama kita buka dahulu PowerShell, untuk memastikan apakah instaladi Docker kita bejalan pertama kita bisa menggunakan perintah :
docker Version
Jika berjalan maka akan keluar tampilan seperti berikut :

Selanjutnya kita bisa langsung mencoba perintah hello world kita dengan perintah :
docker run hello-world
Selanjutnya akan tampil seperti

ketika mengeksekusi perintah docker run hello-world adabeberapa hal yang bisa kita garis bawahi :
- perintah docker run adalah perintah untuk membuat/memulai sebuah container.
- hello-world sendiri adalah perintah untuk menjalankan image hello-world dalam container.
- karena pada saat ini kita tidak mempunyai image hello-world di dalam docker, maka yang pertama yang tampil adalah pemberitahuan unable to find image, dikarenakan kita belum mempunyai image hello-world, maka docker akan mencari respositorynya di docker hub. Jika ditemukan akan langsung di downloadkan buat kita.
- Jika download repository selesai maka kan menampilkan hello from Docker!, yang merupakan repository official dari docker.
Bantuan Dari Docker
Ketika menggunakan Docker kita akan banyak menggunakan perintah Command-Line untuk menjalankan perintah atau fungsi dari Docker. Oleh karena itu akan lebih baik jika kita bisa menggunakan bantuan yang telah disediakan Docker.
Perintah bantuan (help) dari docker dapat diakses dengan menggunakan perintah docker help, yang akan menampilkan list dari top level syntax yang bisa kita gunakan untuk berinteraksi denggan Docker, misalnya run, build, commit dan lain lain.
Untuk mendapat detail perintah dari perintah Top Level ini kita bisa menanambah perintah dari Docker help dengan docker help [perintah], misalnya docker help run, docker help commitdan lain lain.
Menjalankan Container
Pada awal pembahasan ini kita telah membahas tentang menjalanka Docker dengan perintah run untuk menjalankan hello-world. Sekarang kit akan mencoba menjalankan Ubuntu dalam container. Pertama kita akan menjalankan perintah docker pull ubuntu:14.04, peritah pull ini digunakan untuk menarik repositori ubuntu dari Docker Hub dan menyimpanya dalam image lokal. kemudian kita akan coba menjalankan perintah docker images dan perintah docker ps dan docker ps -a, mari kita lihat perbedaan anatara ketiga perintah tersebut.
- pada perintah images akan kita melihat file image lokal yang ada di mesin kita. disini kita temukan file ubuntu yag telah kita tarik/pull dari docker hub
- pada perintah ps kita kita tidak melihat ubuntu karena perintah ini adalah untuk melihat container yang aktif saja.
- selanjutnya pada perintah ps -a, juga kita tidak melihat ubuntu, tetapi kita melihat kontainer lain yang pernah kita buat. ( -a artinya all ). kita tidak melihat ubuntu karena kita belum membuat instance dari ubuntu.
Disini kita dapat melihat perbedaan antara run dengan pull. dimana perintah pull hanya akan mendownload imagenya saja sedangkan perintah run adalah untuk menjalankan container (sekaligus membuat instance dari image).
Perintah run, akan menjalankan container, dengan melakukan pengecekan terlebih dahulu apakah ada image lokal dari container yang akan kita create, jika image tidak ada di mesin lokal maka docker akan mendownload image dari docker hub. Setelah prosen pengecekan atau download selesain maka proses akan menbuat instance dari image.
Kesimpulan
Awalnya saya hanya ingin membahas sedikit tentang Docker, tetapi topik pembahasan tentang docker ini cukup banyak sehingga tidak bisa dibahas seluruhnya dalam satu kali pembahasan. Selanjutnya kita akan membahas topik topik lain pada pembahasan kita selanjutnya.
Dalam pembahasan kali ini, kita telah mempelajari bagaimana cara menginstall docker, menggunakan fasilitas help, mengunduh dan menjalankan image dari docker hub.
Pada pembahasan selanjutnya kita akan lebih detail tentang Container serta pembahasan yang berhubungan dengannya.