Bagikan melalui


Windows dan kontainer

Berlaku untuk: Windows Server 2025, Windows Server 2022, Windows Server 2019, Windows Server 2016

Kontainer adalah teknologi untuk mengemas dan menjalankan aplikasi Windows dan Linux di berbagai lingkungan lokal dan di cloud. Kontainer menyediakan lingkungan yang ringan dan terisolasi yang membuat aplikasi lebih mudah dikembangkan, disebarkan, dan dikelola. Kontainer dimulai dan berhenti dengan cepat, membuatnya ideal untuk aplikasi yang perlu beradaptasi dengan cepat terhadap perubahan permintaan. Sifat kontainer yang ringan juga menjadikannya alat yang berguna untuk meningkatkan kepadatan dan pemanfaatan infrastruktur Anda.

Grafik yang menunjukkan bagaimana kontainer dapat berjalan di cloud atau lokal, mendukung aplikasi monolitik atau layanan mikro yang ditulis dalam hampir semua bahasa.

Ekosistem kontainer Microsoft

Microsoft menyediakan banyak alat dan platform untuk membantu Anda mengembangkan dan menyebarkan aplikasi dalam kontainer:

Bagaimana kontainer bekerja?

Kontainer adalah paket yang terisolasi dan ringan untuk menjalankan aplikasi pada sistem operasi host. Kontainer berjalan di atas kernel sistem operasi host (yang dapat Anda anggap sebagai pipa yang terkubur dari sistem operasi), seperti yang ditunjukkan pada diagram berikut.

Diagram arsitektur memperlihatkan bagaimana kontainer berjalan di atas kernel

Meskipun kontainer berbagi kernel sistem operasi host, tetapi kontainer tersebut tidak mendapatkan akses tak terbatas. Sebaliknya, kontainer mendapat tampilan sistem yang terisolasi–dan dalam beberapa kasus, tervirtualisasi. Misalnya, sebuah kontainer dapat mengakses versi virtual dari sistem file dan registri, tetapi setiap perubahan mempengaruhi hanya kontainer tersebut dan akan dibuang ketika berhenti. Untuk menyimpan data, kontainer dapat memasang penyimpanan persisten seperti Azure Disk atau berbagi file seperti Azure Files.

Kontainer dibangun di atas kernel, tetapi kernel tidak menyediakan semua API dan layanan yang perlu dijalankan aplikasi. Sebagian besar API dan layanan ini berasal dari file sistem (pustaka) yang berjalan di atas kernel dalam mode pengguna. Karena kontainer diisolasi dari lingkungan mode pengguna host, kontainer memerlukan salinan file sistem mode pengguna ini sendiri. File-file ini dimas ke dalam sesuatu yang dikenal sebagai gambar dasar. Gambar dasar berfungsi sebagai lapisan dasar tempat Anda membangun kontainer, menyediakannya dengan layanan sistem operasi yang tidak disediakan oleh kernel.

Kontainer vs. komputer virtual

Berbeda dengan kontainer, komputer virtual (VM) menjalankan sistem operasi lengkap–termasuk kernelnya sendiri–seperti yang ditunjukkan pada diagram berikut.

Diagram arsitektur yang menunjukkan bagaimana VM menjalankan sistem operasi lengkap di samping sistem operasi host

Kontainer dan komputer virtual masing-masing memiliki penggunaannya. Bahkan, banyak penyebaran kontainer menggunakan komputer virtual sebagai sistem operasi host daripada berjalan langsung pada perangkat keras, terutama saat menjalankan kontainer di cloud.

Untuk informasi selengkapnya tentang kesamaan dan perbedaan teknologi pelengkap ini, lihat Kontainer vs. komputer virtual.

Gambar kontainer

Anda membuat semua kontainer dari gambar kontainer. Gambar kontainer adalah bundel file yang diatur ke dalam tumpukan lapisan yang berada di komputer lokal Anda atau di registri kontainer jarak jauh. Gambar kontainer terdiri dari file sistem operasi mode pengguna yang perlu dijalankan aplikasi Anda. Gambar ini juga menyertakan waktu proses aplikasi, dependensi, dan berkas konfigurasi yang diperlukan oleh aplikasi Anda.

Microsoft menawarkan beberapa gambar (disebut gambar dasar) yang dapat Anda gunakan sebagai titik awal untuk membangun gambar kontainer Anda sendiri:

  • Windows - berisi set lengkap API Windows dan layanan sistem (peran server minus).
  • Windows Server - berisi set lengkap API Windows dan layanan sistem.
  • Windows Server Core - gambar yang lebih kecil yang berisi subset API Windows Server–yaitu kerangka kerja .NET lengkap. Ini juga mencakup sebagian besar tetapi tidak semua peran server (misalnya Server Faks tidak disertakan).
  • Nano Server - gambar Windows Server terkecil dan menyertakan dukungan untuk API .NET Core dan beberapa peran server.

Gambar kontainer terdiri dari serangkaian lapisan. Setiap lapisan berisi sekumpulan file yang, ketika dilapisi bersama-sama, mewakili gambar kontainer Anda. Karena sifat kontainer berlapis, Anda tidak selalu harus menargetkan gambar dasar untuk membangun kontainer Windows. Sebagai gantinya, Anda bisa memilih gambar lain yang sudah memiliki kerangka kerja yang Anda inginkan. Misalnya, tim .NET menerbitkan gambar inti .NET yang membawa runtime inti .NET. Ini menghemat pengguna dari kebutuhan untuk menduplikasi proses penginstalan .NET core–alih-alih mereka dapat menggunakan kembali lapisan gambar kontainer ini. Gambar inti .NET itu sendiri dibangun berdasarkan Nano Server.

Untuk informasi selengkapnya, silakan lihat Gambar Dasar Kontainer.

Pengguna kontainer

Kontainer untuk pengembang

Kontainer membantu pengembang membangun dan mengirimkan aplikasi berkualitas lebih tinggi, lebih cepat. Dengan kontainer, pengembang dapat membuat gambar kontainer yang disebarkan dalam hitungan detik, identik di seluruh lingkungan. Kontainer bertindak sebagai mekanisme mudah untuk berbagi kode di seluruh tim dan melakukan bootstrap lingkungan pengembangan tanpa memengaruhi sistem file host Anda.

Kontainer portabel dan serbaguna, dapat menjalankan aplikasi yang ditulis dalam bahasa apa pun, dan kompatibel dengan komputer apa pun yang menjalankan Windows 10, versi 1607 atau yang lebih baru, atau Windows Server 2016 atau yang lebih baru. Pengembang dapat membuat dan menguji kontainer secara lokal di laptop atau desktop mereka, lalu menyebarkan gambar kontainer yang sama ke cloud privat, cloud publik, atau penyedia layanan perusahaan mereka. Kelincahan alami kontainer mendukung pola pengembangan aplikasi modern di lingkungan cloud virtual berskala besar. Manfaat yang paling berguna bagi pengembang mungkin adalah kemampuan untuk mengisolasi lingkungan Anda sehingga aplikasi Anda selalu mendapatkan versi pustaka yang Anda tentukan, menghindari konflik dengan dependensi.

Kontainer untuk profesional TI

Kontainer membantu admin membuat infrastruktur yang lebih mudah diperbarui dan dikelola, dan yang lebih sepenuhnya menggunakan sumber daya perangkat keras. Profesional TI dapat menggunakan kontainer untuk menyediakan lingkungan standar untuk tim pengembangan, QA, dan produksi mereka. Dengan menggunakan kontainer, administrator sistem mengabstraksi perbedaan dalam penginstalan sistem operasi dan infrastruktur yang mendasar.

Anda juga dapat menggunakan mode interaktif kontainer untuk menjalankan instans alat baris perintah yang bertentangan pada sistem yang sama.

Orkestrasi kontainer

Orkestrator adalah bagian penting dari infrastruktur saat menyiapkan lingkungan berbasis kontainer. Orkestrator sangat penting saat mengelola aplikasi kontainer dalam skala besar. Meskipun Anda dapat mengelola beberapa kontainer secara manual menggunakan Docker dan Windows, aplikasi sering menggunakan lima, sepuluh, atau bahkan ratusan kontainer, membuat orkestrator sangat diperlukan.

Orkestrator kontainer dibangun untuk membantu mengelola kontainer dalam skala besar dan dalam produksi. Orkestrator menyediakan fungsionalitas untuk:

Orkestrator membantu Anda menumbuhkan aplikasi kontainer dalam skala besar, menyediakan fungsionalitas untuk:

  • Menyebarkan dalam skala besar
  • Penjadwalan beban kerja
  • Pemantauan kesehatan
  • Gagal ketika node gagal
  • Meningkatkan atau menurunkan skala
  • Jaringan
  • Penemuan layanan
  • Mengoordinasikan peningkatan aplikasi
  • Afinitas node kluster

Ada banyak orkestrator berbeda yang dapat Anda gunakan dengan kontainer Windows; berikut adalah opsi yang disediakan Microsoft:

Coba kontainer di Windows

Untuk mulai menggunakan kontainer di Windows Server atau Windows 10, lihat artikel berikut ini:

Untuk bantuan dalam memutuskan layanan Azure mana yang tepat untuk skenario Anda, lihat Layanan kontainer Azure dan Memilih layanan Azure apa yang akan digunakan untuk menghosting aplikasi Anda.

Sumber

Untuk melihat sumber daya untuk menggunakan kontainer Windows Server, lihat sumber daya berikut ini:

  • Untuk masalah saat ini dan peningkatan fitur yang direncanakan , lihat repositori GitHub kontainer Windows.

  • Lihat blog: Blog Kontainer Windows.

  • Untuk menghubungi tim kontainer Windows Server, kirim email ke grup Pelanggan Kontainer Windows .