Mulai cepat: Menyebarkan instans kontainer di Azure menggunakan Azure PowerShell

Gunakan Azure Container Instances untuk menjalankan kontainer Docker tanpa server di Azure dengan mudah dan cepat. Sebarkan aplikasi ke instans kontainer sesuai permintaan saat Anda tidak memerlukan platform orkestrasi kontainer lengkap seperti Azure Kubernetes Service.

Dalam mulai cepat ini, Anda menggunakan Azure PowerShell untuk menyebarkan kontainer Windows yang terisolasi dan membuat aplikasinya tersedia dengan nama domain yang sepenuhnya memenuhi syarat (FQDN) dan port. Beberapa detik setelah Anda menjalankan satu perintah penyebaran, Anda dapat menelusuri ke aplikasi yang berjalan dalam kontainer:

! [Aplikasi yang disebarkan ke Azure Container Instances dilihat di browser] [./media/container-instances-quickstart/view-an-application-running-in-an-azure-container-instance.png]

Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.

Catatan

Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Lihat Menginstal Azure PowerShell untuk memulai. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.

Azure Cloud Shell

Azure meng-hosting Azure Cloud Shell, lingkungan shell interaktif yang dapat Anda gunakan melalui browser. Anda dapat menggunakan Bash atau PowerShell dengan Cloud Shell untuk bekerja dengan layanan Azure. Anda dapat menggunakan perintah Cloud Shell yang telah diinstal sebelumnya untuk menjalankan kode dalam artikel ini tanpa harus menginstal apa-apa di lingkungan lokal Anda.

Untuk memulai Azure Cloud Shell:

Opsi Contoh/Tautan
Pilih Coba di pojok kanan atas blok kode atau perintah. Memilih Coba tidak otomatis menyalin kode atau perintah ke Cloud Shell. Cuplikan layar yang menunjukkan contoh Try It for Azure Cloud Shell.
Buka https://shell.azure.com, atau pilih tombol Luncurkan Cloud Shell untuk membuka Cloud Shell di browser Anda. Tombol untuk meluncurkan Azure Cloud Shell.
Pilih tombol Cloud Shell pada bilah menu di kanan atas di portal Microsoft Azure. Cuplikan layar yang menunjukkan tombol Cloud Shell di portal Azure

Untuk menggunakan Azure Cloud Shell:

  1. Mulai Cloud Shell.

  2. Pilih tombol Salin pada blok kode (atau blok perintah) untuk menyalin kode atau perintah.

  3. Tempel kode atau perintah ke dalam sesi Cloud Shell dengan memilih Ctrl+Shift+V di Windows dan Linux, atau dengan memilih Cmd+Shift+V di macOS.

  4. Pilih Masukkan untuk menjalankan kode atau perintah.

Jika Anda memilih untuk menginstal dan menggunakan PowerShell secara lokal, tutorial ini memerlukan modul Azure PowerShell versi 1.0.0 atau yang lebih baru. Jalankan Get-Module -ListAvailable Az untuk menemukan versinya. Jika Anda perlu peningkatan, lihat Instal modul Azure PowerShell. Jika Anda menjalankan PowerShell secara lokal, Anda juga perlu menjalankan Connect-AzAccount untuk membuat koneksi dengan Azure.

Buat grup sumber daya

Instans kontainer Azure, seperti semua sumber daya Azure, harus disebarkan ke dalam grup sumber daya. Grup sumber daya memungkinkan Anda menata dan mengelola sumber daya Azure terkait.

Pertama, buat grup sumber daya bernama myResourceGroup di lokasi eastus dengan perintah New-AzResourceGroup berikut:

New-AzResourceGroup -Name myResourceGroup -Location EastUS

Membuat port untuk instans kontainer Anda

Anda dapat mengekspos kontainer Anda ke internet dengan menentukan satu atau beberapa port menjadi terbuka, label nama DNS, atau keduanya. Dalam mulai cepat ini, Anda menyebarkan kontainer dengan label nama DNS sehingga dapat dijangkau secara publik. Dalam panduan ini, kita akan melakukan keduanya, tetapi pertama-tama, Anda perlu membuat objek port di PowerShell untuk digunakan instans kontainer Anda.

$port = New-AzContainerInstancePortOject -Port 80 -Protocol TCP

Membuat grup kontainer

Sekarang setelah Anda memiliki grup sumber daya dan port, Anda dapat menjalankan kontainer yang terekspos ke internet di Azure. Untuk membuat instans kontainer dengan Azure PowerShell, Anda harus terlebih dahulu membuat ContainerInstanceObject dengan memberikan nama, gambar, dan port untuk kontainer. Dalam mulai cepat ini, Anda menggunakan gambar mcr.microsoft.com/azuredocs/aci-helloworld publik.

New-AzContainerInstanceObject -Name myContainer -Image mcr.microsoft.com/azuredocs/aci-helloworld -Port @($port)

Selanjutnya, gunakan cmdlet New-AzContainerGroup . Anda perlu memberikan nama untuk grup kontainer, nama grup sumber daya Anda, lokasi untuk grup kontainer, instans kontainer yang baru saja Anda buat, jenis sistem operasi, dan label nama DNS alamat IP unik.

Jalankan perintah yang mirip dengan yang berikut ini untuk memulai instans kontainer. Set nilai -IPAddressDnsNameLabel yang unik dalam wilayah Azure tempat Anda membuat instans. Jika Anda menerima pesan kesalahan "Label nama DNS tidak tersedia", coba label nama DNS yang berbeda.

$containerGroup = New-AzContainerInstanceObject -ResourceGroupName myResourceGroup -Name myContainerGroup -Location EastUS -Container myContainer -OsType Windows -IPAddressDnsNameLabel aci-quickstart-win -IpAddressType Public -IPAddressPort @($port)

Dalam beberapa detik, Anda seharusnya menerima respons awal dari Azure. Kontainer ProvisioningStateawalnyaMembuat, tetapi seharusnya pindah ke Berhasil dalam satu atau dua menit. Periksa status penyebaran dengan cmdlet Get-AzContainerGroup:

Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

Anda juga dapat mencetak objek $containerGroup dan memfilter tabel untuk status provisi kontainer, nama domain yang sepenuhnya memenuhi syarat (FQDN), dan alamat IP.

$containerGroup | Format-Table InstanceViewState, IPAddressFqdn, IPAddressIP

Status provisi kontainer, FQDN, dan alamat IP muncul dalam output cmdlet:

PS Azure:\> Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

ResourceGroupName        : myResourceGroup
Id                       : /subscriptions/<Subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.ContainerInstance/containerGroups/myContainerGroup
Name                     : myContainerGroup
Type                     : Microsoft.ContainerInstance/containerGroups
Location                 : eastus
Tags                     :
ProvisioningState        : Creating
Containers               : {myContainer}
ImageRegistryCredentials :
RestartPolicy            : Always
IpAddress                : 52.226.19.87
DnsNameLabel             : aci-demo-win
Fqdn                     : aci-demo-win.eastus.azurecontainer.io
Ports                    : {80}
OsType                   : Windows
Volumes                  :
State                    : Pending
Events                   : {}

Jika kontainer ProvisioningState telah Berhasil, buka FQDN-nya melalui browser Anda. Jika Anda melihat halaman web yang mirip dengan halaman berikut ini, selamat! Anda berhasil menyebarkan aplikasi yang berjalan dalam kontainer Docker ke Azure.

! [Lihat aplikasi yang disebarkan ke Azure Container Instances di browser] [./media/container-instances-quickstart/view-an-application-running-in-an-azure-container-instance.png]

Membersihkan sumber daya

Bila Anda sudah selesai dengan kontainer, hapus dengan cmdlet Remove-AzContainerGroup:

Remove-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

Langkah berikutnya

Dalam mulai cepat ini, Anda membuat instans kontainer Azure dari gambar di registri Docker Hub publik. Jika Anda ingin membuat gambar kontainer dan menyebarkannya dari registri kontainer Azure privat, lanjutkan ke tutorial Azure Container Instances.