Edge Security Acceleration (ESA) menyediakan command-line interface (CLI) tool yang dapat digunakan untuk mengelola seluruh siklus hidup Functions and Pages, melakukan debug fungsi, serta menerapkan proyek multi-file.
Pendahuluan
CLI ESA memungkinkan Anda menyelesaikan tugas-tugas berikut:
Mengelola seluruh siklus hidup Functions and Pages secara lokal, termasuk membuat Functions and Pages, menerbitkan dan menerapkan versi, serta mengelola nama domain kustom atau routing.
Melakukan debug fungsi di lingkungan lokal atau jaringan pribadi. CLI menjalankan layanan debugging lokal untuk mensimulasikan lingkungan produksi guna pengujian fungsional.
Menerapkan proyek yang terdiri dari beberapa file. CLI secara otomatis memaketkan dan membangun dependensi proyek, seperti file npm, sehingga memungkinkan penerapan proyek Node.js lokal ke cloud.
Perintah umum
CLI ESA menyediakan berbagai perintah untuk mengelola Functions and Pages. Untuk informasi selengkapnya mengenai semua perintah, lihat https://github.com/aliyun/alibabacloud-esa-cli.
Command | Description |
init | Inisialisasi proyek dari templat ESA. |
dev | Mulai layanan debugging lokal secara otomatis. |
commit | Komit kode proyek ke cloud dan simpan sebagai versi. |
deploy | Terapkan versi ke semua node tepi online. |
deployments | Lihat penerapan versi saat ini atau hapus versi tertentu. |
routine | Lihat semua Functions and Pages, atau hapus fungsi tertentu. |
site | Lihat informasi tentang semua situs di bawah akun Anda. |
domain | Kelola nama domain yang dilampirkan ke Functions and Pages. |
route | Kelola entri rute yang dilampirkan ke Functions and Pages. |
login | Login ke akun Anda menggunakan ID AccessKey dan Rahasia AccessKey. |
logout | Log off. |
config | Kelola file konfigurasi untuk CLI ESA. |
lang | Pilih bahasa untuk CLI ESA. |
Prasyarat
Sebelum menginstal CLI ESA, Anda harus menginstal Node.js dan npm. Kami merekomendasikan penggunaan manajer versi Node, seperti Volta atau nvm, untuk instalasi tersebut.
Gunakan CLI ESA
Instal CLI ESA menggunakan npm, lalu periksa versi CLI dan daftar perintah yang didukung.
npm install esa-cli -g # Install the CLI globally esa -v # View the CLI version esa --help # View the CLI commandsLog on to your account: Dapatkan
AccessKey IDdanAccessKey secretdari Alibaba Cloud Resource Access Management (RAM) console, lalu jalankan perintahesa loginuntuk masuk ke akun Anda. Jika hanya menggunakan CLI untuk debug kode secara lokal, Anda tidak perlu login.esa login # Log on esa logout # Log offInitialize a project: Untuk menginisialisasi proyek, masukkan nama proyek, pilih templat, dan ikuti prompt dari perintah inisialisasi hingga proses selesai.
esa initDebug locally: Setelah menulis kode, lakukan debug secara lokal menggunakan CLI. Saat menjalankan perintah
esa dev, file entri akan dipaketkan secara otomatis dan layanan debugging lokal dimulai.
Petunjuk dasar:
Tekan
bpada antarmuka untuk membuka halaman debug di browser Anda.Tekan
duntuk melihat panduan debug. Catatan: Chrome tidak mengizinkan baris perintah membuka halaman debug. Di browser Chrome, buka halamanChrome://inspect#devices. Akan munculRemote Targetyang sedang berjalan. Klikinspectdi bawahnya untuk melihat informasi konsol. Perlu diperhatikan bahwa kode EdgeRoutine adalah kode sisi server. Oleh karena itu, konsol pada halaman pratinjau tidak menampilkan output dariconsolepada file entri. Anda harus menggunakaninspectuntuk debugging.Tekan
cuntuk membersihkan panel.Tekan
xuntuk keluar dari sesi debugging.Gunakan
esa dev --port <port>untuk menentukan port secara sementara.
Saat melakukan debug secara lokal, Anda juga dapat menjalankan Edge Storage API dan Cache API dalam kode Anda.
CatatanUntuk keamanan data online Anda, layanan edge storage tidak mengambil atau menyetel data online selama debugging lokal. Untuk mensimulasikan data secara lokal, buat file
kv.jsondi direktori root proyek fungsi, pada level yang sama dengan file konfigurasiesa.jsonc. Tulis data ke dalam file tersebut dengan format berikut:{ "namespace": { "k1": "v1", "k2": "v2" } }Kode berikut kemudian dapat mengambil data simulasi tersebut:
const edgeKv = new EdgeKV({ namespace: 'namespace' }); async function run() { const data = await edgeKv.get('k1', { type: 'text' }); console.log(data); // 'v1' }
Generate a version: Setelah debugging lokal selesai, hasilkan versi kode untuk penerapan.
esa commit # Generate a versionDeploy online: Setelah versi dihasilkan, gunakan perintah penerapan untuk menerapkan versi tersebut ke titik keberadaan cloud publik (POPs).
esa deploy # Ikuti prompt untuk memilih versi dan lingkungan target yang akan diterapkan esa deployments list # Lihat status penerapan esa deployments delete <versionId> # Hapus versi tertentuManage custom domains or routes:
Setelah diterapkan ke titik keberadaan (POPs), Anda dapat mengonfigurasi domain kustom atau entri rute untuk mengakses Functions and Pages Anda:
Domain name: Lampirkan nama domain ke Functions and Pages Anda. Nama domain tersebut harus merupakan subdomain dari situs ESA Anda. Hal ini memungkinkan Anda mengakses fungsi langsung melalui nama domain tersebut. Dalam kasus ini, Functions and Pages bertindak sebagai origin server untuk nama domain tersebut.
Route: Lampirkan entri rute ke situs ESA Anda. Mengakses entri rute tersebut akan memicu eksekusi Functions and Pages. Dalam kasus ini, Functions and Pages dapat berkomunikasi dengan origin server situs tersebut.
# Domain name esa domain list esa domain add <domainName> # Harus berupa nama domain Anda yang telah memiliki Pendaftaran ICP esa domain delete <domainName> # Route esa route list esa route add [route] [site] esa route delete <route>Manage functions: Lihat dan hapus fungsi menggunakan CLI.
esa routine list # View functions esa routine delete <routineName> # Delete a function