All Products
Search
Document Center

Function Compute:Terapkan paket kode

Last Updated:Apr 01, 2026

Kemas kode Python beserta dependensi pihak ketiganya dan terapkan ke Function Compute. Panduan ini menggunakan library emoji sebagai contoh.

Pilih metode penerapan

MetodePaling cocok untuk
pip + unggah melalui konsolPaket Python murni tanpa ekstensi native (C/C++)
Serverless DevsPaket yang memiliki ekstensi biner native, atau saat Anda menginginkan alur kerja CLI yang dapat diulang
Penting

Function Compute berjalan di Linux. Jika suatu paket menginstal file biner native (ekstensi C/C++ yang dikompilasi), menginstalnya di Windows atau macOS lalu mengunggah file ZIP tersebut akan menyebabkan error saat eksekusi. Disarankan menggunakan WebIDE atau Serverless Devs untuk menginstal library dependensi. Untuk informasi lebih lanjut, lihat Gunakan WebIDE untuk mengemas dependensi pihak ketiga suatu fungsi dan Terapkan dengan Serverless Devs.

Siapkan proyek contoh

Sebelum memilih metode penerapan, buat file proyek yang digunakan sepanjang panduan ini.

  1. Buat direktori kerja bernama mycode.

    • Linux atau macOS: Jalankan mkdir -p /tmp/mycode

    • Windows: Buat folder bernama mycode

  2. Di direktori mycode, buat file index.py dengan konten berikut:

    from emoji import emojize
    def handler(event, context):
        return emojize(":thumbs_up:")

Terapkan dengan pip dan konsol

Prasyarat

Sebelum memulai, pastikan Anda telah:

Instal dependensi dan kemas kode

  1. Di direktori mycode, instal paket emoji ke direktori saat ini:

    pip3 install emoji -t ./
  2. Buat file ZIP dari isi direktori mycode.

    • Untuk Linux atau macOS

      Masuk ke direktori mycode dan jalankan:

      zip code.zip -r ./*
      Catatan

      Pastikan Anda memiliki izin baca dan tulis pada direktori tersebut.

    • Windows: Buka folder mycode, pilih semua file, klik kanan, lalu kompres menjadi file ZIP.

Unggah paket kode

Di Konsol Function Compute, buka halaman detail fungsi dan klik Upload Code di pojok kanan atas. Pilih file ZIP yang dibuat pada langkah sebelumnya.

Terapkan dengan Serverless Devs

Serverless Devs membangun dependensi di dalam kontainer Docker berbasis Linux, sehingga menjadi pilihan tepat ketika paket Anda mencakup ekstensi biner native atau saat Anda menginginkan proses build yang dapat diulang.

Prasyarat

Sebelum memulai, pastikan Anda telah:

Konfigurasi dan terapkan

  1. Masuk ke direktori mycode:

    cd /tmp/mycode
  2. Buat file s.yaml dengan konten berikut:

    edition: 1.0.0          # Versi spesifikasi YAML, mengikuti semantic versioning
    name: fcDeployApp       # Nama proyek
    access: "default"       # Alias kunci
    
    services:
      fc-deploy-test:       # Nama layanan
        component: fc       # Nama komponen
        props:              # Properti komponen
          region: cn-shanghai
          service:
            name: fctest
            description: 'test'
            internetAccess: true
          function:
            name: emoji
            description: this is a emoji
            runtime: python3
            codeUri: ./
            handler: index.handler
            memorySize: 128
            timeout: 6
  3. Buat file requirements.txt dengan konten berikut:

    emoji==2.0.0
  4. Bangun proyek di dalam kontainer Docker untuk menghasilkan artefak yang kompatibel dengan Linux:

    s build --use-docker

    Setelah proses build selesai, dependensi akan diinstal di .s/build/artifacts/{serviceName}/{functionName}/ di dalam direktori mycode.

  5. Terapkan fungsi ke Function Compute:

    s deploy

Langkah selanjutnya

Layer merupakan alternatif untuk menggabungkan dependensi dalam setiap paket kode. Tambahkan library yang umum digunakan sebagai layer agar beberapa fungsi dapat membaginya tanpa duplikasi.