Men-deploy aplikasi Node.js mandiri

Anda sedang melihat dokumentasi Apigee Edge.
Buka Dokumentasi Apigee X.
info

Topik ini menjelaskan cara men-deploy aplikasi Node.js dari sistem lokal Anda ke Apigee Edge. Dalam topik ini, kita akan membahas cara menggunakan alat command line yang disebut apigeetool untuk men-deploy aplikasi Node.js ke Apigee Edge.

Tentang men-deploy kode Node.js ke Apigee Edge

Anda dapat men-deploy aplikasi Node.js API yang ada, termasuk modul Node.js dependen apa pun, dari sistem lokal Anda ke Apigee Edge menggunakan utilitas command line yang disebut apigeetool. Utilitas ini secara otomatis memaketkan aplikasi beserta dependensinya ke dalam proxy API dan menerapkannya di Edge.

Misalnya, Anda menggunakan Express untuk membuat aplikasi web di Node.js. Tujuan aplikasi berjalan sebagai server HTTP yang mendengarkan permintaan HTTP, memproses permintaan tersebut, mengembalikan data, dan seterusnya. Saat Anda menggunakan apigeetool untuk men-deploy Node.js aplikasi ke Edge, dibungkus dalam proxy dan dieksekusi dalam konteks Edge terkelola sepenuhnya. Lalu Anda bisa memanggil aplikasi melalui URL proxy baru, dan Anda bisa menambah nilai ke dengan "mendandani" dengan fitur Edge standar seperti keamanan OAuth, kebijakan kuota, kebijakan perlindungan, alur kondisional, cache, dan banyak lainnya.

Apa fungsi apigeetool?

Saat Anda menjalankan utilitas apigeetool dengan opsi deploynodeapp, hal tersebut:

  • Menghasilkan paket konfigurasi proxy API untuk menampung aplikasi Node.js.
  • Mengemas aplikasi Node.js dengan paket Node.js yang diinstal dengan NPM (Node Modul yang Dikemas).
  • Mengimpor paket konfigurasi proxy API ke organisasi yang ditentukan di Apigee Edge menggunakan Edge management API.
  • Men-deploy proxy API ke lingkungan.
  • Menjalankan aplikasi Node.js di Apigee Edge dan menyediakannya melalui jaringan.

Bersiap untuk menggunakan apigeetool

Sebelum memulai, Anda perlu menginstal utilitas apigeetool.

Anda bisa menginstal apigeetool baik melalui npm atau dengan meng-clone dan menautkan kode dari GitHub.

Penginstalan dari npm

Modul apigeetool dan dependensinya didesain untuk Node.js dan tersedia melalui npm menggunakan perintah berikut:

$ sudo npm install -g apigeetool

Biasanya, opsi -g menempatkan modul di: /usr/local/lib/node_modules/apigeetool pada mesin berbasis *nix.

Penginstalan dari GitHub

Download atau clone Alat Platform API dari GitHub. Lihat file README di direktori utama repositori untuk petunjuk penginstalan.

$ git clone https://github.com/apigee/apigeetool-node.git

Setelah menyelesaikan penginstalan, pastikan file apigeetool yang dapat dieksekusi berada di Jalan Anda. Anda dapat mengujinya dengan mengetik:

$ apigeetool -h

Men-deploy aplikasi Node.js ke Edge dengan apigeetool

Catatan: Sebelum melakukan deployment, Anda harus mengetahui organisasi Apigee Edge nama, nama pengguna, dan sandi untuk layanan Apigee Akun Edge. Anda memerlukan informasi ini untuk membuat menggunakan perintah apigeetool.

Untuk men-deploy aplikasi Node.js menggunakan apigeetool:

  1. Di jendela terminal, cd direktori utama aplikasi Node.js Anda.
  2. Jalankan utilitas apigeetool dengan deploynodeapp perintah:

    $ apigeetool deploynodeapp -n {A name for your new proxy} -d {The root directory of your Node.js app} -m {The name of the main Node.js file} -o {Your org name on Edge} -e {The environment to deploy to} -b {The base URL for your proxy} -u {Your Edge email address} -p {Your Edge password}
    
    Contoh:

    $ apigeetool deploynodeapp -n myNodeApp -d . -m server.js -o myorg -e test -b /myNodeApp -u ntesla -p myPassword
    
  3. Periksa output di jendela terminal Anda. Hasilnya akan terlihat seperti ini:

    Importing new application myNodeApp
    Imported new app revision 1
    Deploying revision 1
      Deployed.
    Proxy: "myNodeApp" Revision 1
      Environment: test BasePath: /myNodeApp
      Status: deployed
    

    Jika Anda melihat "Status: di-deploy", selesai. Semuanya berjalan lancar. Aplikasi Node.js Anda adalah yang digabungkan dalam proxy API, di-deploy ke Edge, dan sedang berjalan serta menunggu untuk menangani permintaan. Sudah siap untuk diuji.

  4. Uji proxy Anda. Contoh:

    $ curl http://myorg-test.apigee.net/myNodeApp
    Hello, My Node App!
    
  5. Jika mau, login ke akun Apigee Edge Anda dan buka halaman Proxy API pada UI manajemen proyek. Anda akan melihat proxy baru Anda tercantum di sana.

Cara apigeetool menangani file dependen dan modul

Jika aplikasi Node.js Anda bergantung pada modul yang terinstal, apigeetool akan menanganinya dengan membuat zip folder node_modules dan menambahkannya ke paket proxy. Tidak ada tindakan tambahan diperlukan. Hal yang sama berlaku untuk setiap direktori yang berisi kode sumber tambahan. Tujuan utilitas apigeetool melakukan zip dan men-deploy-nya dengan bundle.

Anda tidak dapat mengedit file dalam direktori zip ini di editor UI pengelolaan Edge. Jika Anda perlu mengubahnya, Anda dapat mengekspor project, mengedit file secara lokal, lalu men-deploy ulang menggunakan apigeetool atau dengan mengimpor project yang diekspor menggunakan UI pengelolaan. Lihat juga "Mengekspor dan mengimpor proxy dengan kode Node.js".

Informasi penggunaan dasar untuk apigeetool

Untuk informasi penggunaan dasar tentang parameter input utilitas apigeetool, masukkan:

$ apigeetool deploynodeapp -h

  Usage: deploynodeapp -n [name] -o [organization] -e [environment]
  -d [directory name] -m [main script file]
  -u [username] -p [password]
  -b [base path] -l [apigee API url] -z [zip file] -i -h
  -o Apigee organization name
  -e Apigee environment name
  -n Apigee proxy name
  -d Apigee proxy directory
  -m Main script name: Should be at the top level of the directory
  -u Apigee user name
  -p Apigee password
  -b Base path (optional, defaults to /)
  -L Apigee API URL (optional, defaults to https://api.enterprise.apigee.com)
  -z ZIP file to save (optional for debugging)
  -i import only, do not deploy
  -R Resolve Node.js modules on Apigee Edge. Equivalent to running npm install on your project. 
  -U Uploads Node.js modules to Apigee Edge. 
  -h Print this message

Membuat proxy baru dengan Node.js yang ada file

Cara lain untuk mengintegrasikan aplikasi Node.js yang ada ke dalam proxy API adalah dengan menambahkan saat Anda membuat proxy. Anda dapat melakukan ini sepenuhnya melalui UI pengelolaan dan Dialog Proxy API baru.

  1. Dari halaman ringkasan proxy API, klik +API Proxy.
  2. Dalam dialog Proxy API Baru, pilih Node.js yang Ada.
  3. Gunakan tombol Choose Files untuk memilih satu atau beberapa file Node.js untuk impor.
  4. Beri nama proxy. Dalam contoh ini, kita menyebutnya hellonode.
  5. Tambahkan versi /v1 ke Jalur Dasar Project. Membuat versi API adalah yang terbaik latihan.
  6. Klik Build.
  7. Klik Develop untuk masuk ke tampilan Develop.
  8. Buka file TargetEndpoint di editor kode.
  9. Pastikan elemen <ScriptTarget> menentukan file Node.js utama, sebagai berikut:


    <ScriptTarget>
            <ResourceURL>node://server.js</ResourceURL>
            <Properties/>
    </ScriptTarget>
    
  10. Klik Simpan.

Menambahkan dan memanggil resource Node.js baru file

Cara lain untuk menambahkan kode Node.js ke {i>proxy<i} adalah dengan menambahkannya secara langsung, baik melalui UI mengunggahnya dari sistem file lokal. Anda juga dapat menentukan file Node.js mana , yang merupakan file yang dipanggil Edge saat proxy di-deploy.

Menambahkan baru File Node.js melalui UI

UI pengelolaan memungkinkan Anda menambahkan file sumber Node.js tambahan ke proxy yang ada di Edge terkelola sepenuhnya. Anda dapat membuatnya langsung di UI atau mengimpornya dari sistem file. Pertama, mari kita lihat cara melakukannya dari UI.

Untuk membuat file resource Node.js baru:

  1. Di tampilan Kembangkan, pilih New Skrip dari menu Baru.
  2. Dalam dialog Tambahkan Skrip, pilih jenis file Node, lalu beri nama skrip.
  3. Klik Tambahkan.

File Node.js baru yang kosong akan terbuka di editor. Anda dapat memotong dan menempelkan kode ke . File ini juga muncul di bagian Skrip Navigator.

[[{&quot;type&quot;:&quot;media&quot;,&quot;view_mode&quot;:&quot;media_large&quot;,&quot;fid&quot;:&quot;2431&quot;,&quot;attributes&quot;:{&quot;alt&quot;:&quot;&quot;,&quot;class&quot;:&quot;media-image&quot;,&quot;height&quot;:&quot;312&quot;,&quot;typeof&quot;:&quot;foaf:Image&quot;,&quot;width&quot;:&quot;417&quot;}}]]

Mengimpor File Node.js dari sistem file Anda

Untuk mengimpor file Node.js dari sistem file ke proxy:

  1. Di tampilan Kembangkan, pilih New Skrip dari menu Baru.
  2. Dalam dialog Add Script, klik Import Skrip.
  3. Gunakan alat file untuk memilih file Node.js Anda.
  4. Nama file akan ditambahkan ke dialog, tetapi Anda dapat mengubahnya jika diinginkan.
  5. Klik Tambahkan. File tersebut muncul di Skrip Navigator dan terbuka di editor.
  6. Klik Simpan.

Jika Anda ingin memanggil file yang diimpor, diperlukan langkah tambahan, seperti yang dijelaskan dalam bagian.

Memanggil file Node.js yang diimpor

Anda tidak bisa begitu saja memanggil file Node.js yang baru diimpor atau dibuat. Alasannya adalah bahwa Edge mengharuskan satu file Node.js menjadi file utama. File utama ditentukan dalam &lt;ScriptTarget&gt; dari definisi Endpoint Target. Untuk menentukan {i>file<i} mana yang Node.js, lakukan langkah berikut:

  1. Di bagian Endpoint Target di Navigator, klik nama endpoint target (biasanya disebut default).
  2. Di editor Code, edit <ScriptTarget> dengan mengubah elemen &lt;ResourceURL&gt; untuk mencerminkan nama file yang ingin Anda jadikan file utama Node.js. Sebagai misalnya, jika Anda ingin file bernama hello-world.js menjadi file utama, Anda akan memasukkan: node://hello-world.js dalam elemen ResourceURL.
  3. Klik Simpan.

Pada tahap ini, Anda dapat memanggil file dengan jalur proxy apa pun yang digunakan sebelumnya. Misalnya, kita telah membahas Halo Dunia! contoh, dengan jalur dasar v1/hello adalah yang ditentukan. Namun, Anda dapat mengubah jalur dasar dengan mengedit Endpoint Proxy.

  1. Di bagian Proxy Endpoints di Navigator, klik nama endpoint proxy (biasanya disebut default).
  2. Di editor Kode, edit <HttpProxyConnection> dengan mengubah elemen &lt;BasePath&gt; dengan nama apa pun yang Anda inginkan. Misalnya, jika <BasePath> saat ini adalah v1/hello dan Anda menginginkannya menjadi v1/my-node-file, ubah <BasePath> seperti ini:

    &lt;BasePath&gt;/v1/my-node-file&lt;/BasePath&gt;
  3. Klik Simpan.
  4. Panggil proxy menggunakan jalur dasar baru, seperti ini:

    $ curl http://myorg-test.apigee.net/v1/my-node-file
    Hello, World!
    

Mengekspor dan mengimpor proxy dengan kode Node.js

Setelah men-deploy proxy yang berisi kode Node.js ke Edge, Anda dapat mengekspor kembali proxy kapan saja ke sistem Anda, kerjakan di sana, lalu impor ulang ke Edge menggunakan UI pengelolaan. Ini semacam teknik pengembangan bolak-balik yang umum digunakan.

  1. Dari halaman ringkasan proxy API, klik Develop.
  2. Di halaman Pengembangan, pilih Download Current Revision.
  3. Ekstrak file yang didownload di sistem Anda.

Anda dapat mengimpor kembali paket proxy ke Edge dengan memilih Import Into New Revisi dari menu yang sama.

Anda juga dapat menggunakan API ini untuk men-deploy proxy. Lihat Men-deploy proxy dari perintah untuk mengetahui detailnya.

Langkah Berikutnya

Dalam topik berikutnya, Menambahkan Node.js ke proxy API yang ada, kami menjelaskan cara menambahkan aplikasi Node.js ke aplikasi yang sudah ada proxy di sistem file Anda dan deploy ke Edge.