Latihan - Menyebarkan citra Docker ke Azure Container Instance

Selesai

Azure Container Instance memungkinkan Anda menjalankan citra Docker di Azure.

Di latihan sebelumnya, Anda mengemas dan menguji aplikasi web sebagai gambar Docker lokal. Sekarang, Anda ingin menggunakan output dari latihan tersebut, dan membuat aplikasi web tersedia secara global. Untuk mencapai ketersediaan ini, Anda menjalankan gambar sebagai Instans Kontainer Azure.

Di latihan ini, Anda akan mempelajari cara membuat kembali gambar untuk aplikasi web dan mengunggahnya ke Azure Container Registry. Anda akan menggunakan layanan Azure Container Instance untuk menjalankan citra.

Penting

Anda memerlukan langganan Azure Anda sendiri untuk menjalankan latihan ini, dan Anda mungkin dikenakan biaya. Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum memulai.

Membuat registri kontainer

  1. Masuk ke portal Microsoft Azure dengan langganan Azure Anda.

  2. Pada menu sumber daya atau dari halaman Beranda, pilih Buat sumber daya. Panel Buat sumber daya akan muncul.

  3. Di menu, pilih Kontainer, lalu pilih Container Registry.

    Screenshot that shows Create a resource with Container Registry.

    Panel Buat registri kontainer muncul.

  4. Pada tab Dasar, masukkan nilai berikut untuk setiap pengaturan.

    Pengaturan Nilai
    Detail proyek
    Langganan Pilih langganan Azure tempat Anda diizinkan membuat dan mengelola sumber daya.
    Grup sumber daya Pilih Buat grup sumber daya baru dengan nama learn-deploy-container-aci-rg. Ingat nama yang Anda pilih; Anda akan menggunakannya dalam sisa latihan dalam modul ini. Selain itu, ingat untuk menghapus sumber daya ini saat menyelesaikan modul.
    Detail instans
    Nama registri Pilih nama pilihan Anda. Nama registri haruslah unik dalam Azure, dan berisi antara 5-50 karakter alfanumerik.
    Lokasi Pilih lokasi yang dekat dengan Anda.
    SKU Standard
  5. Pilih Tinjau + buat. Saat pemberitahuan Lulus validasi muncul, pilih Buat. Tunggu hingga registri kontainer telah disebarkan sebelum melanjutkan.

  6. Pilih Buka sumber daya. Panel Registri kontainer menampilkan hal-hal penting tentang registri kontainer Anda.

  7. Di menu sumber daya, di bagian Pengaturan, pilih Kunci akses. Panel Kunci akses untuk registri kontainer Anda muncul.

  8. Jika pengaturan Pengguna admin dinonaktifkan, pilih penggeser untuk mengaktifkan kunci akses Pengguna admin. Nama Pengguna dan kata sandi muncul untuk registri kontainer Anda.

  9. Catat Nama registri, Server masuk, Nama pengguna, dan kata sandi untuk registri kontainer Anda.

    Catatan

    Di latihan ini, kami mengaktifkan akses akun admin sehingga kami dapat mengunggah gambar dan menguji registri. Di lingkungan produksi, penting untuk menonaktifkan akses akun pengguna Admin dan menggunakan Microsoft Entra ID Protection segera setelah Anda puas bahwa registri beroperasi seperti yang diharapkan.

    Screenshot of the Access keys details.

Unggah citra untuk aplikasi sistem reservasi hotel ke Azure Container Registry

  1. Di prompt perintah lokal Anda, jalankan perintah berikut, ganti <registry-name> dengan nama registri kontainer Anda untuk menandai gambar saat ini reservationsystem dengan nama registri Anda:

    docker tag reservationsystem:latest <registry-name>.azurecr.io/reservationsystem:latest
    
  2. Jalankan docker image ls perintah untuk memverifikasi bahwa gambar telah ditandai dengan benar:

    docker image ls
    

    Sekarang, Anda akan melihat sesuatu yang mirip dengan output berikut:

    REPOSITORY                                    TAG                 IMAGE ID            CREATED             SIZE
    reservationsystem                             latest              a56281e7038f        4 minutes ago       1.76GB
    <registry-name>.azurecr.io/reservationsystem  latest              a56281e7038f        4 minutes ago       1.76GB
    
  3. Di perintah, masuk ke Azure Container Registry Anda. Gunakan perintah docker login dan tentukan server login untuk registri yang Anda sebutkan sebelumnya. Masukkan nama pengguna dan kata sandi dari kunci akses Anda saat diminta.

    docker login <login-server>
    

    Catatan

    Anda mungkin menerima respons kesalahan dari daemon bahwa aplikasi Anda tidak terdaftar dengan ID Microsoft Entra. Seperti disebutkan sebelumnya dalam latihan ini, Anda telah mengaktifkan kunci akses Pengguna admin untuk menguji penyebaran kami.

  4. Masukkan perintah berikut, ganti <registry-name> dengan nama registri Anda sendiri untuk mengunggah gambar ke registri Anda di Azure Container Registry:

    docker push <registry-name>.azurecr.io/reservationsystem:latest
    

    Tunggu sampai pengunggahan selesai. Proses ini akan memerlukan waktu beberapa menit untuk mendorong semua objek gambar ke repositori Anda. Anda dapat mengamati tingkat kemajuan saat setiap objek bergerak dari Menunggu menjadi Mempersiapkan menjadi Mendorong menjadi Terdorong.

Pastikan konten registrinya

Selama sisa latihan, Anda akan kembali ke portal Azure.

  1. Di portal Microsoft Azure, kembali ke registri kontainer Anda.

  2. Di menu sumber daya, di bawah Layanan, pilih Repositori. Panel Repositori untuk registri kontainer Anda akan muncul.

  3. Verifikasi bahwa repositori reservationsystem sudah muncul. Pilih repositori reservationsystem, dan verifikasi bahwa repositori ini berisi citra dengan tag terbaru.

    Screenshot showing the repository and tagged reservation system container image in the registry.

Memuat dan menjalankan citra menggunakan Azure Container Instance

  1. Di portal Microsoft Azure, pilih Buat sumber daya. Panel Buat sumber daya akan muncul.

  2. Di menu sumber daya, pilih Kontainer, lalu pilih Container Instances.

    Screenshot showing Container Instances.

    Panel Buat instans kontainer akan muncul.

    Ada beberapa langkah untuk mengonfigurasi Container Instances. Mulai dengan mengatur informasi grup sumber daya dan detail kontainer. Selanjutnya, konfigurasikan opsi jaringan kontainer, dan memulai ulang kebijakan.

  3. Pada tab Dasar, masukkan nilai berikut untuk setiap pengaturan.

    Pengaturan Nilai
    Detail proyek
    Langganan Pilih langganan Azure default tempat Anda diizinkan membuat dan mengelola sumber daya
    Grup sumber daya Gunakan kembali grup sumber daya yang ada learn-deploy-container-aci-rg
    Detail kontainer
    Nama kontainer hotelsysteminstance
    Wilayah Gunakan lokasi default
    Sumber gambar Docker Hub atau registri lainnya
    Jenis citra Privat
    Gambar <registry-name>.azurecr.io/reservationsystem:latest
    Server login registri citra Masukkan nama server login untuk registri Anda
    Nama pengguna registri citra Masukkan nama server login untuk registri Anda
    Kata sandi registri citra Masukkan nama server login untuk registri Anda
    Jenis OS Linux
    Ukuran Biarkan Ukuran default diatur menjadi 1 vcpu, memori 1,5 GiB, 0 gpus
  4. Pilih Next: Networking.

  5. Pada tab Jaringan, masukkan nilai berikut untuk setiap pengaturan.

    Pengaturan Nilai
    Jenis jaringan Publik
    Label nama DNS Pilih nama unik, yang akan digunakan sebagai bagian dari URL kontainer.
    Port
    Port 80
    Protokol port TCP
  6. Pilih Berikutnya: Tingkat Lanjut.

  7. Pada tab Tingkat Lanjut, masukkan nilai berikut ini untuk setiap pengaturan.

    Pengaturan Nilai
    Memulai ulang kebijakan Selalu
    Variabel lingkungan biarkan semua pengaturan kosong
    Mengesampingkan perintah biarkan kosong
  8. Pilih Tinjau + buat. Tunggu validasi selesai, lalu perbaiki kesalahan apa pun, jika perlu.

  9. Pilih Buat.

  10. Ketika instans kontainer telah dibuat, pilih Buka sumber daya. Panel instans kontainer Anda muncul.

  11. Di panel Gambaran umum, temukan nama domain yang sepenuhnya memenuhi syarat (FQDN) dari instans kontainer.

    Screenshot that shows the New pane in Azure portal showing the Container properties with the FQDN highlighted.

  12. Dengan menggunakan browser web, navigasikan ke URL http://FQDN/api/reservations/1, ganti FQDN dengan nama domain yang sepenuhnya memenuhi syarat dari instans kontainer Anda. Misalnya, menggunakan FQDN yang terlihat di cuplikan layar di atas akan terlihat seperti:

    http://hotel.southcentralus.azurecontainer.io/api/reservations/1
    

    Aplikasi web harus merespons dengan objek JSON yang berisi detail untuk reservasi 1.

Selamat! Anda mengunggah citra Docker ke Azure Container Registry, dan Anda menjalankan citra menggunakan layanan Azure Container Instance.