Sebarkan Azure Cosmos DB dan Azure App Service dengan aplikasi web dari GitHub menggunakan Templat Azure Resource Manager
BERLAKU UNTUK: NoSQL
Tutorial ini menunjukkan kepada Anda cara melakukan penyebaran "tanpa sentuhan" dari aplikasi web yang terhubung ke Azure Cosmos DB pada proses pertama tanpa harus memotong dan menempelkan informasi koneksi apa pun dari Azure Cosmos DB ke appsettings.json
atau ke pengaturan aplikasi Azure App Services di portal Azure. Semua tindakan ini dilakukan menggunakan templat Azure Resource Manager dalam satu operasi. Dalam contoh di sini kita akan menyebarkan sampel Azure Cosmos DB ToDo dari tutorial aplikasi Web.
Templat Resource Manager cukup fleksibel dan memungkinkan Anda untuk menyusun penyebaran kompleks di semua layanan di Azure. Ini termasuk tugas lanjutan seperti menyebarkan aplikasi dari GitHub dan menyuntikkan informasi koneksi ke pengaturan aplikasi Azure App Service di portal Azure. Tutorial ini akan menunjukkan kepada Anda cara melakukan hal-hal berikut menggunakan satu templat Resource Manager.
- Menyebarkan akun Azure Cosmos DB.
- Sebarkan Rencana Hosting Azure App Service.
- Sebarkan Azure App Service.
- Masukkan titik akhir dan kunci dari akun Azure Cosmos DB ke pengaturan aplikasi App Service di portal Azure.
- Sebarkan aplikasi web dari repositori GitHub ke App Service.
Hasil penyebarannya adalah aplikasi web fungsional yang dapat terhubung ke Azure Cosmos DB tanpa harus memotong dan menempelkan URL titik akhir Azure Cosmos DB atau kunci autentikasi dari portal Azure.
Prasyarat
Tip
Meskipun tutorial ini tidak perlu pengalaman dengan templat Azure Resource Manager atau JSON, jika Anda ingin memodifikasi templat atau opsi penyebaran yang dirujuk, maka pengetahuan tentang masing-masing area ini diperlukan.
Langkah 1: Sebarkan templat
Pertama, pilih tombol Sebarkan ke Azure di bawah ini untuk membuka portal Azure demi penyebaran kustom. Anda juga bisa melihat templat Azure Resource Management dari Galeri Templat Mulai Cepat Azure
Setelah berada di portal Azure, pilih langganan yang ingin disebarkan dan pilih atau buat grup sumber daya baru. Lalu isi nilai berikut.
- Wilayah - Ini diperlukan oleh Resource Manager. Masukkan wilayah yang sama dengan yang digunakan oleh parameter lokasi tempat sumber daya Anda berada.
- Nama Aplikasi - Nama ini digunakan oleh semua sumber daya untuk penyebaran ini. Pastikan untuk memilih nama unik demi menghindari konflik dengan akun Azure Cosmos DB dan App Service yang ada.
- Lokasi - Wilayah tempat sumber daya Anda digunakan.
- Tingkat Rencana App Service - Tingkat harga Rencana App Service.
- Instans Rencana App Service - Jumlah pekerja untuk rencana layanan aplikasi.
- URL Repositori - Repositori ke aplikasi web di GitHub.
- Cabang - Cabang untuk repositori GitHub.
- Nama Database - Nama database Azure Cosmos DB.
- Nama Kontainer - Nama kontainer Azure Cosmos DB.
Setelah mengisi nilai, pilih tombol Buat untuk memulai penyebaran. Langkah ini harusnya memakan waktu antara 5 dan 10 menit sampai selesai.
Tip
Templat tidak memvalidasi bahwa nama Azure App Service dan nama akun Azure Cosmos DB yang dimasukkan dalam templat valid dan tersedia. Sangat disarankan agar Anda memverifikasi ketersediaan nama yang ingin disuplai sebelum mengirimkan penyebaran.
Langkah 2: Jelajahi sumber daya
Lihat sumber daya yang diterapkan
Setelah templat menggunakan sumber daya, Anda sekarang dapat melihat masing-masingnya di grup sumber daya Anda.
Menampilkan titik akhir dan kunci Azure Cosmos DB
Selanjutnya, buka akun Azure Cosmos DB di portal. Cuplikan layar berikut menunjukkan titik akhir dan kunci untuk akun Azure Cosmos DB.
Lihat kunci Azure Cosmos DB dalam pengaturan aplikasi
Selanjutnya, buka Azure App Service di grup sumber daya. Klik tab Konfigurasi untuk melihat Pengaturan Aplikasi untuk App Service. Pengaturan Aplikasi berisi akun Azure Cosmos DB dan nilai kunci utama yang diperlukan untuk terhubung ke Azure Cosmos DB serta nama database dan kontainer yang diteruskan dari penyebaran templat.
Lihat aplikasi web di Pusat Penyebaran
Selanjutnya masuk ke Pusat Penyebaran untuk App Service. Di sini Anda akan melihat Repositori menunjuk ke repositori GitHub diteruskan ke templat. Juga Status di bawah ini menunjukkan Berhasil(Aktif), yang berarti aplikasi berhasil digunakan dan dimulai.
Jalankan aplikasi web
Klik Telusuri di bagian atas Pusat Penyebaran untuk membuka aplikasi web. Aplikasi web akan terbuka ke layar beranda. Klik Buat Baru dan masukkan beberapa data ke dalam bidang dan klik Simpan. Layar yang dihasilkan menunjukkan data yang disimpan ke Azure Cosmos DB.
Langkah 3: Cara kerjanya
Ada tiga elemen yang diperlukan agar ini berhasil.
Membaca pengaturan aplikasi pada runtime
Pertama, aplikasi perlu meminta titik akhir dan kunci Azure Cosmos DB di Startup
kelas di aplikasi web MVC ASP.NET. Sampel Yang Harus Dilakukan Azure Cosmos DB dapat berjalan secara lokal di mana Anda dapat memasukkan informasi koneksi ke dalam appsettings.json. Namun, ketika disebarkan, file ini tidak menyebar dengan aplikasi. Jika garis-garis merah ini tidak dapat mengakses pengaturan dari appsettings.json, ia akan mencoba dari Pengaturan Aplikasi di Azure App Service.
Menggunakan fungsi spesial Azure Resource Management
Agar nilai-nilai ini tersedia untuk aplikasi saat disebarkan, templat Azure Resource Manager dapat meminta nilai-nilai tersebut dari akun Azure Cosmos DB menggunakan fungsi Azure Resource Management khusus termasuk referensi dan listKeys yang mengambil nilai dari akun Azure Cosmos DB dan memasukkannya ke dalam nilai pengaturan aplikasi dengan nama kunci yang cocok dengan apa yang digunakan dalam aplikasi di atas di '{bagian: format key}'. Contohnya, CosmosDb:Account
.
Menyebarkan aplikasi web dari GitHub
Terakhir, kita perlu menyebarkan aplikasi web dari GitHub ke dalam App Service. Ini dilakukan menggunakan JSON di bawah ini. Dua hal yang harus diperhatikan adalah jenis dan nama untuk sumber daya ini. Baik nilai properti "type": "sourcecontrols"
dan "name": "web"
berkode keras dan tidak boleh diubah.
Langkah berikutnya
Selamat! Anda telah menyebarkan Azure Cosmos DB, Azure App Service, dan aplikasi web sampel yang secara otomatis memiliki info koneksi yang diperlukan untuk terhubung ke Azure Cosmos DB, semuanya dalam satu operasi dan tanpa harus memotong dan menempelkan informasi sensitif. Dengan templat ini sebagai titik awal, Anda dapat memodifikasinya untuk menyebarkan aplikasi web Anda sendiri dengan cara yang sama.
- Untuk Templat Azure Resource Manager bagi sampel ini, buka Galeri Templat Azure Quickstart
- Untuk kode sumber untuk aplikasi sampel, buka Azure Cosmos DB To Do App di GitHub.