Function Compute menyediakan runtime bawaan untuk bahasa pemrograman populer seperti Node.js, Python, PHP, Java, C#, dan Go. Dengan runtime ini, Anda dapat fokus pada penulisan logika bisnis tanpa perlu khawatir mengenai konfigurasi tambahan. Namun, dalam beberapa skenario, Anda mungkin memerlukan bahasa pemrograman yang kurang umum atau versi tertentu dari suatu bahasa untuk memenuhi kebutuhan bisnis spesifik. Dalam kasus tersebut, Anda dapat membuat runtime kustom untuk menyiapkan lingkungan yang disesuaikan. Sebagai contoh, Anda dapat menggunakan bahasa pemrograman seperti Rust atau menentukan versi Node.js, seperti Node.js 16, dalam runtime kustom Anda.
Kami merekomendasikan penggunaan fungsi web dengan runtime kustom. Kombinasi ini memungkinkan Anda dengan cepat menyiapkan berbagai kerangka aplikasi web populer, sehingga lebih mudah untuk membangun dan menerapkan aplikasi serta layanan berbasis HTTP. Anda dapat menyesuaikan perintah startup dan port mendengarkan untuk runtime kustom Anda, serta mendukung konkurensi tingkat instans.
Lingkungan kontainer
Tabel berikut mencantumkan lingkungan kontainer yang didukung oleh runtime kustom.
Runtime | Pengenal | Sistem operasi | Arsitektur |
Runtime kustom (Debian 12) (dalam pratinjau publik) | custom.debian12 | Debian 12 | x86_64 |
Runtime kustom (Debian 11) | custom.debian11 | Debian 11 | x86_64 |
Runtime kustom (Debian 10) | custom.debian10 | Debian 10 | x86_64 |
Runtime kustom (Debian 9) | custom | Debian 9 | x86_64 |
Runtime kustom (Debian 12) didukung di wilayah berikut: Tiongkok (Hangzhou), Tiongkok (Qingdao), Tiongkok (Beijing), Tiongkok (Zhangjiakou), Tiongkok (Hohhot), dan Tiongkok (Chengdu).
Fungsi yang dibuat setelah 00:00:00 pada 1 Desember 2021
Izin Pengguna: Fungsi harus dijalankan oleh pengguna root.
Izin Direktori: Data dapat ditulis ke direktori mana pun.
Lokasi Kode dalam Kontainer: /code.
Fungsi yang dibuat sebelum 00:00:00 pada 1 Desember 2021
Izin Pengguna: Fungsi harus dijalankan oleh pengguna non-root.
Izin Direktori: Data hanya dapat ditulis ke direktori /tmp.
Lokasi Kode dalam Kontainer: /code.
Informasi lingkungan
Dependensi bawaan
Dependensi bawaan dari runtime kustom sama dengan runtime bawaan. Untuk informasi lebih lanjut, lihat topik-topik berikut:
Saat Anda membuat fungsi web dengan runtime kustom, sistem secara otomatis mengonfigurasi lapisan publik yang sesuai untuk bahasa pemrograman yang Anda gunakan. Sebagai contoh, lapisan Flask secara otomatis dikonfigurasi saat Anda membuat fungsi web dalam Python.
Runtime kustom (Debian 12)
Tabel berikut menunjukkan bahasa pemrograman bawaan dari runtime kustom (Debian 12). Anda dapat menulis kode untuk fungsi runtime kustom Anda langsung dalam bahasa berikut tanpa menginstal penerjemah pihak ketiga atau mengonfigurasi lapisan.
Dalam beberapa bahasa pemrograman, Anda perlu mengonfigurasi variabel lingkungan. Lihat tabel berikut untuk detailnya.
Bahasa pemrograman | Direktori instalasi | Versi | Variabel lingkungan |
Python 3.11 | /usr/bin/python3 | 3.11.2 | Tidak diperlukan pengaturan tambahan |
Runtime kustom (Debian 11)
Tabel berikut menunjukkan bahasa pemrograman bawaan dari runtime kustom (Debian 11). Anda dapat menulis kode untuk fungsi runtime kustom Anda langsung dalam bahasa berikut tanpa menginstal penerjemah pihak ketiga atau mengonfigurasi lapisan.
Dalam beberapa bahasa pemrograman, Anda perlu mengonfigurasi variabel lingkungan. Lihat tabel berikut untuk detailnya.
Bahasa pemrograman | Direktori instalasi | Versi | Variabel lingkungan |
Python 3.12 | /var/fc/lang/python3.12 | 3.12.4 | PATH=/var/fc/lang/python3.12/bin:$PATH |
Runtime kustom (Debian 10)
Tabel berikut mencantumkan bahasa pemrograman bawaan dari runtime kustom (Debian 10). Anda dapat menulis kode untuk fungsi runtime kustom Anda langsung dalam bahasa berikut tanpa menginstal penerjemah pihak ketiga atau mengonfigurasi lapisan.
Dalam beberapa bahasa pemrograman, Anda perlu mengonfigurasi variabel lingkungan. Lihat tabel berikut untuk detailnya.
Bahasa pemrograman | Direktori instalasi | Versi | Variabel lingkungan |
Node.js 20 | /var/fc/lang/nodejs20 | v20.10.0 | PATH=/var/fc/lang/nodejs20/bin:$PATH |
Node.js 18 | /var/fc/lang/nodejs18 | v18.19.0 | PATH=/var/fc/lang/nodejs18/bin:$PATH |
Python 3.10 | /var/fc/lang/python3.10 | 3.10.9 | PATH=/var/fc/lang/python3.10/bin:$PATH |
Python 2.7 | Direktori instalasi default | 2.7.16 | Tidak ada |
Runtime kustom (Debian 9)
Daftar berikut mencantumkan bahasa pemrograman bawaan dari runtime kustom (Debian 9). Anda dapat menulis kode untuk fungsi runtime kustom Anda langsung dalam bahasa berikut tanpa menginstal penerjemah pihak ketiga atau mengonfigurasi lapisan.
Python 3.7.4 (versi Python default)
Node.js 10.16.2
OpenJDK 1.8.0
Ruby 2.7
Nginx 1.10.3
PHP 7.4.12
Menggunakan bahasa pemrograman non-bawaan
Kami merekomendasikan Anda menggunakan lapisan publik jika ingin menulis kode fungsi dalam bahasa pemrograman non-bawaan. Untuk informasi lebih lanjut, lihat Konfigurasikan Lapisan Umum di Konsol Function Compute.
Jika Anda ingin membuat runtime kustom menggunakan bahasa pemrograman non-bawaan, Anda harus mengemas penerjemah atau waktu proses untuk bahasa tersebut bersama dengan file kode Anda dan menerapkannya ke Function Compute. Sebagai contoh, untuk membuat runtime Node.js 16, Anda harus mengunduh penerjemah yang diperlukan, mengemasnya dengan kode Anda, dan kemudian menerapkan paket tersebut ke Function Compute. Lakukan langkah-langkah berikut:
Unduh
Node.jsversi Linux 64-bit ke direktori paket kode.wget http://mirrors.nju.edu.cn/nodejs/v16.14.2/node-v16.14.2-linux-x64.tar.gz -O node-v16.14.2-linux-x64.tar.gz && tar -zxvf node-v16.14.2-linux-x64.tar.gz && rm -rf node-v16.14.2-linux-x64.tar.gzKonfigurasikan perintah startup
Node.jsdalam runtime kustom.customRuntimeConfig: command: - /code/node-v16.14.2-linux-x64/bin/node args: - 'server.js' # Anda juga dapat mengonfigurasi variabel lingkungan berikut untuk fungsi Anda: PATH=/code/node-v16.14.2-linux-x64/bin:/usr/local/bin/apache-maven/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/ruby/bin. # Setelah konfigurasi selesai, Anda dapat menggunakan Node.js untuk memulai server HTTP.
Instal dependensi
Untuk informasi lebih lanjut tentang cara menginstal dependensi setiap bahasa pemrograman dalam runtime kustom, lihat topik-topik berikut:
Anda juga dapat menggunakan lapisan Function Compute untuk menginstal dependensi. Kami merekomendasikan Anda menggunakan lapisan publik atau membangun lapisan dependensi secara online. Untuk informasi lebih lanjut, lihat topik-topik berikut: