Container adalah unit standar perangkat lunak yang mengemas kode dan semua dependensinya sehingga aplikasi berjalan dengan cepat dan andal dari satu lingkungan komputasi ke yang lain. Docker Container adalah paket perangkat lunak yang ringan, mandiri, dan dapat dieksekusi yang mencakup semua yang diperlukan untuk menjalankan aplikasi: kode, runtime, alat sistem, pustaka dan pengaturan sistem.
Docker Container tersedia untuk aplikasi berbasis Linux dan Windows, perangkat lunak yang dikemas dalam container akan selalu berjalan sama, apa pun infrastrukturnya. Container mengisolasi perangkat lunak dari lingkungannya dan memastikannya berfungsi secara seragam meskipun ada perbedaan antara pengembangan dan produksi.
Docker Container yang dijalankan di Docker Engine memiliki beberapa keunggulan:
Standar: Docker menciptakan standar industri untuk container, sehingga mereka bisa dibawa-bawa di mana saja
Ringan: Wadah berbagi kernel sistem OS mesin dan karenanya tidak memerlukan OS per aplikasi, mendorong efisiensi server yang lebih tinggi dan mengurangi biaya server dan lisensi
Aman: Aplikasi lebih aman dalam wadah dan Docker menyediakan kemampuan isolasi standar terkuat di industri.
Container dan mesin virtual memiliki manfaat isolasi dan alokasi sumber daya yang serupa, tetapi berfungsi secara berbeda karena wadah mengvirtualisasikan sistem operasi alih-alih perangkat keras. Wadah lebih portabel dan efisien.
CONTAINERS
Container adalah abstraksi pada lapisan aplikasi yang mengemas kode dan dependensi bersama-sama. Beberapa wadah dapat berjalan di mesin yang sama dan berbagi kernel OS dengan wadah lain, masing-masing berjalan sebagai proses yang terisolasi di ruang pengguna. Kontainer mengambil ruang lebih sedikit daripada VM (gambar kontainer biasanya berukuran puluhan MB), dapat menangani lebih banyak aplikasi dan membutuhkan lebih sedikit VM dan sistem operasi.
VIRTUAL MACHINES
Mesin virtual (VM) adalah abstraksi perangkat keras fisik yang mengubah satu server menjadi banyak server. Hypervisor memungkinkan beberapa VM berjalan pada satu mesin. Setiap VM mencakup salinan lengkap dari sistem operasi, aplikasi, binari dan perpustakaan yang diperlukan – mengambil puluhan GB. VM juga bisa lambat untuk boot.