Function Compute mendukung dependensi pihak ketiga selain pustaka runtime bawaannya. Topik ini mencakup tiga metode untuk menginstalnya: menggunakan layers, mengunggah paket melalui Konsol, dan menggunakan Serverless Devs. Pilih metode berdasarkan alur kerja penerapan dan jenis dependensi Anda.
Untuk dependensi bawaan yang tersedia di setiap runtime, lihat ikhtisar runtime untuk Node.js, Python, PHP, Java, C#, Go, dan custom runtimes.
Pilih metode instalasi
| Method | Best for | Limitations |
|---|---|---|
| Layers | Dependensi yang digunakan bersama oleh beberapa fungsi; menjaga ukuran paket penerapan tetap kecil | Pembuatan layer melalui Konsol hanya mendukung Node.js dan Python; tidak mendukung dependensi yang berisi dynamic-link libraries (.so) |
| Console package upload | Instalasi satu kali; proyek kecil | Dependensi dibundel bersama kode fungsi; tidak dapat digunakan ulang di antara fungsi |
| WebIDE terminal | Instalasi cepat tanpa meninggalkan browser | Memerlukan pengaktifan fungsi di Konsol |
| Serverless Devs | Alur kerja CI/CD; pengembangan lokal | Mengharuskan penyiapan Serverless Devs |
Instal dependensi menggunakan layers
Layers memungkinkan Anda mengemas dependensi secara terpisah dari kode fungsi dan menyambungkannya ke satu atau beberapa fungsi. Gunakan layers ketika Anda ingin:
Mengurangi ukuran paket penerapan dengan memisahkan dependensi dari kode fungsi.
Berbagi dependensi yang sama di beberapa fungsi tanpa menduplikasinya di setiap paket.
Memperbarui dependensi dan kode fungsi secara independen.
Menjaga editor kode WebIDE tetap dapat digunakan (paket inline besar akan menonaktifkannya).
Function Compute menyediakan lapisan publik resmi untuk pustaka umum. Untuk daftar lengkapnya, lihat awesome-layers.
Tambahkan lapisan publik
Lapisan publik resmi
Buka Konsol Function Compute dan navigasikan ke fungsi tersebut.
Pada halaman Detail Fungsi, klik tab Configurations.
Pada bagian Layers, klik Modify.
Pada panel modifikasi layer, pilih + Add Layer > Add Public Layer.
Untuk petunjuk langkah demi langkah, lihat Konfigurasi lapisan publik untuk fungsi.
Lapisan publik non-resmi
Temukan layer di awesome-layers dan salin Alibaba Cloud Resource Name (ARN)-nya.
Pada halaman Detail Fungsi, klik tab Configurations.
Pada bagian Layers, klik Modify.
Pada panel modifikasi layer, pilih + Add Layer > Add Layer by ARN, lalu tempel ARN tersebut.
Buat layer kustom
Pilih metode build berdasarkan jenis dependensi Anda:
| Build method | Use when |
|---|---|
| Function Compute console | Dependensi Node.js atau Python tanpa dynamic-link libraries (.so) |
| On-premises machine | Dependensi tanpa binari tingkat sistem; mesin Anda menjalankan Linux x86-64 atau pustaka bersifat independen terhadap arsitektur |
| Dockerfile | Dependensi berisi dynamic-link libraries (.so), atau build on-premises gagal |
Build menggunakan Konsol Function Compute
Login ke Konsol Function Compute. Di panel navigasi sebelah kiri, pilih Advanced Features > Layers. Untuk langkah-langkah detail, lihat Create a custom layer.
Metode ini hanya mendukung runtime Node.js dan Python. Metode ini tidak mendukung dependensi yang berisi dynamic-link libraries (.so), seperti Puppeteer untuk Node.js. Untuk dependensi tersebut, gunakan metode Dockerfile.
Membangun di mesin on-premise
Buat paket ZIP di mesin lokal dan unggah sebagai layer. Lihat Build a ZIP package for a layer.
Mesin on-premises harus menjalankan Linux x86-64, atau dependensi tidak boleh bergantung pada OS atau arsitektur prosesor yang mendasarinya. Misalnya, pustaka Python NumPy bersifat tergantung arsitektur — membangunnya di Mac dengan chip M1 menghasilkan binari yang tidak kompatibel dengan runtime Function Compute. Jika mesin Anda tidak memenuhi persyaratan ini, gunakan metode Dockerfile sebagai gantinya.
Build menggunakan Dockerfile
Gunakan metode ini ketika dependensi mencakup dynamic-link libraries (.so) atau ketika build on-premises gagal. Lihat Use a Dockerfile to build a layer.
Instal dependensi menggunakan Konsol
Unggah paket
Kompres semua file dalam direktori kode ke dalam paket ZIP. File fungsi handler harus berada di root paket.
PentingKemas seluruh direktori kode, bukan hanya file entri fungsi. Perintah pengemasan bervariasi tergantung sistem operasi.
Login ke Konsol Function Compute dan navigasikan ke fungsi tersebut.
Unggah paket dengan mengklik Upload ZIP, Upload Folder, atau OSS, lalu terapkan fungsi tersebut.
Instal menggunakan terminal WebIDE
Login ke Konsol Function Compute dan navigasikan ke fungsi tersebut.
Pada halaman Detail Fungsi, klik tab Code.
Di antarmuka WebIDE, pilih Terminal > New Terminal.
Jalankan perintah instal di terminal. Untuk Python:
pip install -t . <PackageName>Ganti
<PackageName>dengan nama paket dependensi. Flag-t .menginstal paket ke direktori saat ini sehingga Function Compute dapat menemukannya saat runtime.Verifikasi struktur direktori di explorer file WebIDE.

Untuk detail lebih lanjut tentang menerapkan hasilnya, lihat Deploy a code package.
Instal dependensi menggunakan Serverless Devs
Buat dan terapkan fungsi beserta dependensinya menggunakan Serverless Devs. Lihat Serverless Devs commands.