js ke Azure
(App Service Linux)
Artikel
15/06/2022
5 menit untuk membaca
6 kontributor
Tutorial ini memandu Anda melalui tugas membuat aplikasi Node.js sederhana dan
menerbitkannya ke Azure.
Terdapat beberapa opsi saat menerbitkan aplikasi Node.js ke Azure. Ini termasuk
Azure App Service, VM yang menjalankan OS yang Anda pilih, Azure Container
Service (AKS) untuk manajemen dengan Kubernetes, Instance Kontainer
menggunakan Docker, dan banyak lagi. Untuk detail selengkapnya tentang masing-
masing opsi ini, lihat Komputasi.
Untuk tutorial ini, Anda menyebarkan aplikasi ke App Service Linux. Linux App
Service menyebarkan kontainer Docker Linux untuk menjalankan aplikasi Node.js
(berlawanan dengan Windows App Service, yang menjalankan aplikasi Node.js di
belakang IIS di Windows).
Tutorial ini menunjukkan cara membuat aplikasi Node.js mulai dari templat yang
diinstal dengan Alat Node.js untuk Visual Studio, memasukkan kode ke repositori di
GitHub, lalu menyediakan Azure App Service melalui portal web Azure sehingga
Anda dapat menyebarkan dari repositori GitHub. Untuk menggunakan baris perintah
untuk menyediakan Azure App Service dan mendorong kode dari repositori Git lokal,
lihat Membuat Aplikasi Node.js.
Prasyarat
Anda harus menginstal Visual Studio dan beban kerja pengembangan Node.js.
Jika Anda belum memasang Visual Studio 2019, buka halaman unduhan Visual
Studio untuk memasangnya secara gratis.
Jika Anda perlu memasang beban kerja tetapi sudah memiliki Visual Studio,
buka Alat>Dapatkan Alat dan Fitur..., yang membuka Alat Penginstal Visual
Studio. Pilih beban kerja pengembangan Node.js, lalu pilih Ubah.
Jika Anda tidak menginstalnya, instal versi LTS dari situs web Node.js. Secara
umum, Visual Studio secara otomatis mendeteksi runtime Node.js yang diinstal.
Jika tidak mendeteksi runtime yang diinstal, Anda dapat mengonfigurasi proyek
Anda untuk merujuk runtime yang diinstal di halaman properti (setelah Anda
membuat proyek, klik kanan node proyek dan pilih Properti).
Pada titik ini, aplikasi Node.js yang menggunakan kerangka kerja Express dan
ditulis dalam TypeScript berfungsi dan diperiksa ke kontrol sumber lokal.
5. Edit proyek sesuai keinginan sebelum melanjutkan ke langkah berikutnya.
4. Klik Mulai.
Jika Anda sudah tersambung ke GitHub, kotak alat muncul seperti ilustrasi
berikut.
5. Lengkapi bidang untuk repositori baru yang akan diterbitkan, lalu
klik Terbitkan.
10. Pilih repositori dan cabang yang akan diterbitkan, lalu pilih OKE.
Halaman opsi penyebaran muncul saat menyinkronkan.
Situs ini sekarang menjalankan aplikasi Node.js dari repositori GitHub, dan
dapat diakses di URL yang dibuat untuk Azure App Service (secara default nama
yang diberikan ke Azure App Service diikuti oleh ".azurewebsites.net").
Mengubah aplikasi Anda dan mendorong perubahan
1. Tambahkan kode yang ditampilkan di sini di app.ts setelah
baris app.use('/users', users);. Ini menambahkan REST API di URL /api.
TypeScriptMenyalin
app.use('/api', (req, res, next) => {
res.json({"result": "success"});
});
2. Buat kode dan uji secara lokal, lalu periksa dan dorong ke GitHub.
Dalam portal Azure, perlu beberapa saat untuk mendeteksi perubahan dalam
repositori GitHub, lalu sinkronisasi baru penyebaran dimulai. Ini terlihat mirip
dengan ilustrasi berikut.
Pemecahan Masalah
Jika proses node.exe mati (yaitu, pengecualian yang tidak ditangani terjadi),
kontainer akan dimulai ulang.
Ketika kontainer dimulai, kontainer berjalan melalui berbagai heuristik untuk
mencari tahu cara memulai proses Node.js. Detail implementasi dapat dilihat
di generateStartupCommand.js.
Anda dapat terhubung ke kontainer yang sedang berjalan melalui SSH untuk
penyelidikan. Ini mudah dilakukan menggunakan portal Azure. Pilih App
Service, dan gulir ke bawah daftar alat hingga mencapai SSH di bawah
bagian Alat Pengembangan.
Untuk membantu dalam pemecahan masalah, buka pengaturan Log
diagnostik untuk App Service, dan ubah pengaturan pengelogan Kontainer
Docker dari Nonaktif menjadi Sistem File. Log dibuat dalam kontainer di
bawah /home/LogFiles/_docker.log*, dan dapat diakses pada kotak
menggunakan SSH atau FTP(S).
Nama domain kustom dapat ditetapkan ke situs, bukan URL *.azurewebsites.net
yang ditetapkan secara default. Untuk detail selengkapnya, lihat
topik Memetakan Domain Kustom.
Menyebarkan ke situs penahapan untuk pengujian lebih lanjut sebelum pindah
ke produksi adalah praktik terbaik. Untuk detail tentang cara mengonfigurasi
ini, lihat topik Membuat lingkungan penahapan.
Lihat FAQ App Service di Linux untuk pertanyaan umum lainnya.
Langkah berikutnya
Dalam tutorial ini, Anda mempelajari cara membuat App Service Linux dan
menyebarkan aplikasi Node.js ke layanan. Anda mungkin ingin mempelajari lebih
lanjut tentang App Service Linux.