Pengertian docker
Apa itu docker?
Docker ini diperkenalkan pada tahun 2013 oleh Solomon Hykes pada acara PyCon. Beberapa bulan setelahnya docker secara resmi diluncurkan, tepatnya pada tahun 2014.
Docker adalah sebuah cara mempackage aplikasi ,defaploy dan mendistribusikan nya atau dengan kata lain
layanan yang menyediakan kemampuan untuk mengemas dan menjalankan sebuah aplikasi dalam sebuah lingkungan terisolasi yang disebut dengan container. Dengan adanya isolasi dan keamanan yang memadai memungkinkan kamu untuk menjalankan banyak container di waktu yang bersamaan pada host tertentu.
Dengan Docker, Anda bisa mencoba software baru tanpa harus menginstalnya secara manual. Docker juga berguna kalau Anda memerlukan software yang harus disiapkan cepat.mengirimkan kode lebih cepat, menstandardisasi operasi aplikasi, memindahkan kode dengan lancar, dan menghemat uang dengan meningkatkan pemanfaatan sumber daya. Tujuan digunakannya Docker adalah untuk membuat aplikasi menjadi portable dan simpel.
Sebagai contoh, proses setup server MySQL bisa memakan waktu lama. Nah, dengan Docker, Anda hanya memerlukan satu perintah melalui CLI untuk melakukannya.
Fitur-fitur docker
Setelah mengetahui pengertiannya, sekarang kita masuk ke fitur-fitur dari docker yang dapat kamu gunakan sesuai dengan kebutuhanmu.
-
Docker engine
Yang pertama ada docker engine. Ia digunakan untuk membuat image dan container. -
Docker Hub
Selanjutnya adalah docker hub. Ia adalah registry yang berisikan kumpulan dari image-image. Dengan menggunakan docker hub ini kamu dapat mengumpulkan image. Hub ini berbeda dengan docker engine yang hanya membuat image. -
Docker Compose
Docker compose ini adalah salah satu fitur unggulan yang berfungsi untuk menjalankan beberapa container atau biasa disebut multi-container sehingga dapat menghemat banyak waktu. - Docker yang digunakan pada Mac
terdapat fitur docker yang memungkinkan pengguna nya untuk menjalankan container docker pada Mac OS. - Docker yang digunakan pada Linux
Sama seperti docker yang dapat digunakan untuk Mac, terdapat juga fitur docker yang dapat dijalankan jika kamu menggunakan OS Linux di PC mu. - Docker yang digunakan pada Windows
Terakhir, yang tentunya paling banyak digunakan yaitu docker untuk Windows. Docker ini memungkinkan pengguna nya untuk bisa menjalankan container docker di Windows. Tentunya mayoritas akan menggunakan docker ini karena pengguna windows pasti sangat banyak.
Arsitektur docker
Arsitektur Docker adalah daemon Docker, yang menyediakan lapisan yang mengabstraksi spesifikasi OS dari pengguna sekaligus memberikan pengguna tersebut kemampuan untuk menangani semua aspek siklus hidup container (mulai dari build, install, run, hingga pembersihan) dalam sebuah cara yang mudah digunakan dan dapat diulang. Kontainer menjadi sangat populer karena manfaat yang diberikan oleh abstraksi ini.
Terlepas dari apakah Docker digunakan di Linux atau Windows, Anda dapat menggunakan perintah yang sama untuk mulai bekerja dengan aplikasi Anda. Gambar berikut mengilustrasikan arsitektur Docker:
dan juga arsitektur Docker terdiri dari empat komponen utama, yaitu:
- Docker Daemon: berfungsi untuk membangun, mendistribusikan, dan menjalakan container Docker.
- Client Docker – komponen utama untuk membuat, mengelola, dan menjalankan aplikasi dalam container. Client Docker adalah metode utama untuk mengontrol server Docker melalui CLI seperti Command Prompt (Windows) atau Terminal (macOS, Linux).
tampilan diatas adalah docker dekstop windows dengan GUI dan tampilan CLI lewat CMD
tampilan diatas adalah docker client versi linux hanya ada versi CLI
- Server Docker – juga disebut daemon Docker. Server Docker menunggu permintaan REST API yang dibuat oleh client Docker serta mengelola image dan container.
- Docker Container: berada di atas image. Setiap perubahan yang disimpan pada container akan menyebabkan terbentuknya layer baru di atas base image. Docker container dibuat menggunakan Docker daemon.berikut contoh container
- Docker Image: dasar template untuk Docker container. Berisi instruksi yang di-define pada file Dockerfile. Template yang bersifat read-only. Satu docker images dapat digunakan untuk membuat banyak docker container,komponen yang memerintahkan server Docker terkait persyaratan tentang cara container Docker dibuat. Image bisa didownload dari website seperti Docker Hub. Anda juga bisa membuat custom image, yaitu dengan membuat Dockerfile dan meneruskannya ke server. Perlu diketahui bahwa Docker tidak menghapus image yang tidak digunakan, jadi user harus menghapus data image sendiri agar tidak menumpuk. contoh docker image
- Registry Docker – aplikasi sisi server open-source yang digunakan untuk menghosting dan mendistribusikan image Docker. Registry sangat berguna untuk menyimpan image secara lokal dan mengelolanya sepenuhnya. Atau, user bisa mengakses Docker Hub yang tadi disebutkan, yang merupakan repositori image Docker terbesar di dunia.
dan berikut gambar ilustrasi konsep arsitektur docker