Kuasai dasar-dasar Docker dengan konsep penting ini dijelaskan dengan kata-kata sederhana.

Menguasai Docker adalah keterampilan yang dicari oleh para insinyur perangkat lunak backend. Docker akan membantu Anda membangun, mengemas, dan mendistribusikan aplikasi.

Aplikasi yang di-docker dapat berjalan di berbagai lingkungan. Hal ini menurunkan waktu henti aplikasi sehingga memberikan keunggulan kompetitif bagi bisnis. Namun Docker bisa jadi mengintimidasi saat Anda mulai mempelajarinya. Berikut adalah topik penting untuk dipelajari untuk menguasai Docker.

Apa itu Docker?

Docker adalah perangkat lunak yang digunakan untuk mengemas aplikasi ke dalam unit yang dapat dieksekusi yang disebut container. Docker menyediakan dukungan untuk membangun, menguji, dan menyebarkan aplikasi dengan cepat.

Saat Anda menggunakan Docker, Anda berinteraksi dengan Mesin Docker. Anda dapat menginstal Docker Engine di sistem operasi apa pun, termasuk jendela 10 dan 11, macOS, atau sistem Ubuntu/Linux. Ada banyak alat dan konsep yang perlu Anda pelajari untuk menggunakan Docker secara efektif. Inilah yang paling penting untuk Anda mulai.

instagram viewer

1. Gambar Docker

Gambar Docker adalah cetak biru ringan yang digunakan untuk membuat container. Ini adalah templat instruksi yang menentukan sistem operasi, kode aplikasi, dan dependensi. Anda menentukan instruksi tentang cara membuat image di Dockerfile.

Dalam file tersebut, Anda menunjukkan semua yang dibutuhkan aplikasi Anda. Docker kemudian membuat image secara otomatis berdasarkan instruksi yang diberikan. Anda dapat menemukan berbagai gambar di registri online Docker, Docker Hub. Docker merekomendasikan penggunaan image resmi untuk tujuan keamanan.

Anda juga dapat membuat gambar berdasarkan konfigurasi yang disesuaikan. Gambar tersedia dalam berbagai ukuran, sistem operasi, dan bahasa. Anda dapat memilih salah satu yang paling sesuai dengan aplikasi Anda. Misalnya, Anda bisa belajar cara membuat image Docker dari API web .NET.

2. Kontainer Docker

Kontainer adalah unit yang digunakan untuk mengemas aplikasi ke dalam unit yang dapat dieksekusi. Kontainer mencakup semua yang diperlukan untuk menjalankan aplikasi, termasuk perpustakaan, kode, dependensi, dan waktu proses.

Kontainer mengisolasi aplikasi ke dalam unit-unit yang memungkinkannya berjalan secara konsisten di berbagai lingkungan. Kontainer memungkinkan Anda mengelola aplikasi di lingkungan pengembangan dan produksi tanpa mengalami kesalahan. Ada banyak kasus penggunaan untuk kontainer yang bisa Anda jelajahi.

Kontainer Docker memiliki detail seperti ID kontainer, image, dan sistem operasi dasar. Anda juga dapat melihat runtime, status, dan nama container. Untuk membuat daftar semua kontainer di sistem Anda, gunakan perintah berikut:

docker container ls

Anda akan melihat detail semua container yang sedang berjalan:

Anda juga bisa menggunakan buruh pelabuhan ps untuk melihat semua container yang sedang berjalan. Dan pemeriksaan kontainer buruh pelabuhan [ID kontainer] untuk melihat isi wadah.

4. file buruh pelabuhan

Dockerfile adalah dokumen yang menentukan instruksi tentang cara membuat image Docker. File tersebut menentukan gambar dasar, kode aplikasi, dan file yang diperlukan untuk membuat gambar.

File ini juga menyertakan variabel lingkungan dan perintah untuk pembuatan gambar. Anda dapat membuat Dockerfile seperti file lainnya. Anda harus menentukan instruksi pada file menggunakan sintaks yang dipahami Docker. Berikut adalah contoh contoh Dockerfile:

5. Penulisan Docker

Docker Compose adalah alat untuk mendefinisikan dan menjalankan aplikasi Docker multi-kontainer. Anda mengonfigurasi semua layanan dalam file YAML. File YAML adalah dokumen tempat Anda menentukan layanan yang diperlukan untuk aplikasi Anda. Anda kemudian dapat membuat dan menjalankan semua layanan menggunakan satu perintah.

Docker Compose dapat menjalankan aplikasi di berbagai lingkungan. Ini bisa berupa lingkungan produksi, pementasan, pengembangan, atau pengujian. Docker Compose menyederhanakan proses kompleks dalam mengatur banyak container.

Anda dapat menggunakan Docker Compose untuk mengelola aplikasi sepanjang siklus hidupnya. Hal ini dapat mencakup memulai, menghentikan, dan membangun kembali layanan. Anda juga dapat melihat status layanan yang berjalan, mengalirkan keluaran log, dan menjalankan perintah pada layanan.

Dengan Docker Compose, Anda dapat mengonfigurasi jaringan, mengelola volume, dan menentukan dependensi. Anda juga dapat menskalakan aplikasi secara horizontal dalam produksi dengan menentukan layanan replika.

Compose menyederhanakan penerapan aplikasi kompleks ke berbagai lingkungan. Anda juga dapat menggunakannya untuk mereplikasi lingkungan yang sama di sistem yang berbeda. Mempelajari cara menggunakan Docker Compose dapat meningkatkan efisiensi aplikasi Anda.

Berikut ini contoh file Docker Compose YAML:

6. Pusat Docker

Pusat Docker adalah registri kontainer online untuk Docker. Menjadi registri kontainer terbesar, ini merupakan alat kolaborasi untuk pengembang dan kontributor sumber terbuka. Ini juga merupakan pasar yang sangat baik bagi vendor perangkat lunak.

Docker Hub adalah sumber tepercaya untuk menemukan perangkat lunak virtualisasi yang andal. Anda dapat membuat repositori dan membagikan lebih dari 100.000 gambar.

Kamu bisa menghosting aplikasi Anda dan kode pada platform. Anda juga dapat berkolaborasi dalam proyek dengan pengembang lain. Docker Hub memiliki opsi publik gratis atau repo pribadi berbayar untuk tim resmi tertentu.

7. Jaringan Docker

Jaringan Docker adalah fitur yang memungkinkan container berkomunikasi satu sama lain dan dengan sumber daya eksternal. Jaringan menyediakan komunikasi yang terkontrol dan terisolasi antar container. Ini bisa berupa container yang berjalan pada satu atau beberapa host.

Saat Anda menjalankan container di mesin Anda, container tersebut tidak terekspos ke jaringan eksternal. Anda menggunakan port untuk mengekspos kontainer ke alamat IP eksternal, layanan DNS, tabel rute, dan gateway internet.

Jaringan memungkinkan container untuk beroperasi di lingkungan jaringan yang terisolasi. Jaringan menyediakan namespace dan alamat IP, mengurangi konflik container dan meningkatkan keamanan.

8. Volume Docker

Di Docker, volume adalah mekanisme yang digunakan untuk menyimpan data persisten. Secara desain, kontainer bersifat sementara. Artinya mudah untuk mengganti atau menghancurkannya dengan semua datanya. Namun, ada kalanya Anda ingin menyimpan datanya. Dalam kasus seperti itu, Anda dapat menggunakan volume Docker untuk mengelola data persisten.

Volume juga memiliki kegunaan lain, termasuk memungkinkan berbagi data antar kontainer. Mereka mudah untuk dicadangkan dan dimigrasikan dibandingkan dengan bentuk penyimpanan lainnya. Selain itu, Anda dapat mengelola volume menggunakan Docker CLI atau API.

Jika Anda menjalankan container tanpa volume, Docker secara otomatis membuatnya. Anda juga dapat membuat dan mengelola volume yang diisolasi dari kontainer mana pun. Gunakan perintah berikut untuk membuat volume.

docker volume create my-vol

Untuk melihat volume yang Anda buat, jalankan perintah berikut:

docker volume ls //local my-vol

Anda kemudian dapat melampirkan volume ke wadah apa pun yang Anda inginkan. Anda dapat membaca lebih lanjut tentang volume di Buruh pelabuhan dokumentasi resmi.

Fitur Docker Lainnya

Docker adalah salah satu pilihan terbaik untuk manajemen container dan kontrol versi. Jika Anda mempelajari perangkat Docker, Anda dapat meningkatkan dan menyederhanakan alur kerja pengembangan Anda.

Docker memiliki banyak fitur yang dapat Anda gunakan untuk mengelola aplikasi Anda. Setelah menguasai fitur-fitur utama, Anda dapat menjelajahi fitur kompleks lainnya seperti Docker Swarm yang digunakan untuk mengatur aplikasi kompleks.