All Products
Search
Document Center

Function Compute:Terapkan paket kode

Last Updated:Apr 02, 2026

Terapkan fungsi PHP dengan dependensi pihak ketiga ke Function Compute dengan mengemas kode Anda dan direktori vendor ke dalam file ZIP. Panduan ini menggunakan Nette\Utils sebagai contoh dependensi dan mencakup dua metode penerapan: Composer melalui Konsol Function Compute dan Serverless Devs.

Persiapkan kode Anda

Siapkan direktori kode lokal yang berisi penanganan fungsi sebelum menerapkan.

  1. Buat direktori bernama mycode untuk kode fungsi Anda.

    • Linux dan macOS: Jalankan mkdir -p /tmp/mycode.

    • Windows: Buat folder bernama mycode.

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

    <?php
    
    require_once __DIR__ . '/vendor/autoload.php';
    
    use Nette\Utils\Arrays;
    
    function handler($event, $context) {
        return Arrays::contains([1, 2, 3], 1);
    }

Metode 1: Gunakan Composer

Instal dependensi secara lokal dengan Composer, kemas kode ke dalam file ZIP, lalu unggah melalui Konsol Function Compute.

Prasyarat

Sebelum memulai, pastikan Anda telah:

Instal dependensi dan terapkan

  1. Di direktori mycode, buat file composer.json:

    {
      "require": {
        "nette/utils": "v3.2.5"
      }
    }
  2. Di direktori mycode, jalankan composer install untuk menginstal dependensi. Setelah perintah selesai, Composer membuat file composer.lock dan direktori vendor di dalam mycode. Dependensi yang diunduh disimpan di direktori vendor.

  3. Kemas semua file di dalam direktori mycode ke dalam file ZIP.

    • Linux dan macOS: Masuk ke direktori mycode dan jalankan:

      zip code.zip -r ./*
      Catatan: Pastikan Anda memiliki izin baca dan tulis pada direktori tersebut.
    • Windows: Buka direktori mycode, pilih semua file, klik kanan, lalu kompres menjadi file ZIP.

    Catatan: Pastikan file index.php berada di direktori root paket.
  4. Di Konsol Function Compute, buka fungsi yang ingin Anda perbarui. Di pojok kanan atas halaman detail fungsi, klik Upload Code dan pilih file ZIP tersebut. Atau, unggah file ZIP saat membuat fungsi. Lihat Buat fungsi event.

  5. Di tab Code pada halaman detail fungsi, klik Test Function untuk memverifikasi penerapan.

Metode 2: Gunakan Serverless Devs

Gunakan Serverless Devs dengan Docker untuk membangun dan menerapkan fungsi Anda tanpa perlu mengelola file ZIP secara manual.

Prasyarat

Sebelum memulai, pastikan Anda telah menyelesaikan langkah-langkah berikut:

Instal dependensi dan terapkan

  1. Di direktori mycode, buat file s.yaml dengan konten berikut:

    edition: 3.0.0
    name: fcDeployApp
    access: "default"
    
    vars: # Variabel global.
      region: "cn-hangzhou"
    
    resources:
      hello_world:
        component: fc3 # Nama komponen.
        props:
          region: ${vars.region}              # Untuk informasi tentang cara menggunakan variabel, kunjungi https://docs.serverless-devs.com/serverless-devs/yaml#%E5%8F%98%E9%87%8F%E8%B5%8B%E5%80%BC.
          functionName: "testphp"
          description: 'this is a test'
          runtime: "php7.2"
          code: ./
          handler: index.handler
          memorySize: 128
          timeout: 30
  2. Di direktori mycode, buat file composer.json:

    {
        "require": {
            "nette/utils": "^3.0"
        }
    }
  3. Jalankan perintah berikut untuk menginstal dependensi di dalam kontainer Docker yang sesuai dengan lingkungan runtime Function Compute:

    sudo s build --use-docker

    Setelah perintah selesai, Serverless Devs menginstal dependensi dan kode ke dalam direktori ./vendor.

  4. Jalankan perintah berikut untuk menerapkan fungsi:

    sudo s deploy

    Setelah perintah selesai, fungsi Anda diterapkan ke Function Compute.

Langkah selanjutnya

Untuk mengelola dependensi tanpa harus mengemasnya dalam setiap penerapan, gunakan layer Function Compute. Lihat Buat layer kustom.