Todos los productos
Search
Centro de documentos

Function Compute:Primeros pasos con Function Compute mediante Serverless Devs

Última actualización: Sep 22, 2026

Serverless Devs es una CLI serverless de código abierto. Úsela para el despliegue de una función de Python en Function Compute, invocarla y limpiar los recursos.

Requisitos previos

Asegúrese de contar con lo siguiente:

Compruebe la versión de Node.js:

node --version

Paso 1: Instalar Serverless Devs

Serverless Devs se instala mediante npm, descarga de binarios o script. Esta guía usa npm.

sudo npm install @serverless-devs/s -g

Compruebe la instalación:

sudo s -v

Salida esperada:

@serverless-devs/s: 3.0.1, s-home: /root/.s, linux-x64, node-v14.17.4

Paso 2: Configurar el par de AccessKey

Nota

El ID y el secreto de AccessKey otorgan acceso total a su cuenta de Alibaba Cloud. Manténgalos seguros.

  1. Inicie el asistente de configuración:

    sudo s config add

    La CLI muestra los proveedores de nube compatibles:

    > Alibaba Cloud (alibaba)
      AWS (aws)
      Azure (azure)
      Baidu Cloud (baidu)
      Google Cloud (google)
      Huawei Cloud (huawei)
      Tencent Cloud (tencent)
    (Move up and down to reveal more choices)
  2. Seleccione Alibaba Cloud (alibaba) y presione Enter.

  3. Introduzca su par de AccessKey cuando el sistema lo solicite.

    Please select a provider: Alibaba Cloud (alibaba)
     Refer to the document for alibaba key:  http://config.devsapp.net/account/alibaba
     AccountID 188077086902****
     AccessKeyID yourAccessKeyID
     AccessKeySecret yourAccessKeySecret
     Please create alias for key pair. If not, please enter to skip default
    
        Alias: default
        AccountID: 188077086902****
        AccessKeyID: yourAccessKeyID
        AccessKeySecret: yourAccessKeySecret
    
    Configuration successful

Paso 3: Inicializar una función de ejemplo

  1. Cree un proyecto Hello World en Python:

    sudo s init start-fc3-python

    Siga las indicaciones para seleccionar una región, un nombre de función y un entorno de ejecución:

    More applications: https://registry.serverless-devs.com
    ? Please input your project name (init dir) start-fc3-python
    Downloading[/v3/packages/start-fc3-python/zipball/0.0.8]...
    Download start-fc3-python successfully
    
    ...
    Region where the application is created
    ? Region cn-huhehaote
    Must contain only letters, digits, underscores (_), and hyphens (-). Cannot start with a digit or a hyphen. The length must be 1 to 128 characters.
    ? Function name start-python-8i32
    Region where the application is created
    ? python runtime python3.9
    ? please select credential alias default
    
        * Before using, please check whether the actions command in Yaml file is available
        * Carefully reading the notes in s.yaml is helpful for the use of the tool
        * If need help in the use process, please apply to join the Dingtalk Group: 33947367
    
       Thanks for using Serverless-Devs
       You could [cd /start-fc3-python] and enjoy your serverless journey!
       If you need help for this example, you can use [s -h] after you enter folder.
       Document Star: https://github.com/Serverless-Devs/Serverless-Devs
       More applications: https://registry.serverless-devs.com

    Se crea la carpeta start-fc3-python con los siguientes archivos:

    Archivo Descripción
    s.yaml Definición de recursos para Function Compute en formato YAML.
    code/index.py Punto de entrada del código de la función
    readme.md Define los módulos y la configuración del proyecto
  2. Vaya a la carpeta del proyecto:

    cd start-fc3-python

Paso 4: Despliegue de la función

Realice el despliegue de la función. Los metadatos como el nombre, el entorno de ejecución y la memoria se definen en s.yaml.

sudo s deploy

Salida esperada:

   Steps for [deploy] of [hello-world-app]
====================

✔ [hello_world] completed (3.1s)

   Result for [deploy] of [hello-world-app]
====================
region:         cn-huhehaote
description:    hello world by serverless devs
functionName:   start-python-8i32
handler:        index.handler
internetAccess: true
memorySize:     128
role:
runtime:        python3.9
timeout:        30

A complete log of this run can be found in: /Users/x1/.s/logs/0229164849

Compruebe que la salida muestre el nombre de su función y la región.

Paso 5: Invocar la función

Envíe un evento de prueba a la función:

sudo s invoke -e "test"

Salida esperada:

   Steps for [invoke] of [hello-world-app]
====================
========= FC invoke Logs begin =========
FunctionCompute python3 runtime inited.
FC Invoke Start RequestId: 1-65e045b1-123e1745-79e146cd8b01
2024-02-29T08:52:01.317Z 1-65e045b1-123e1745-79e146cd8b01 [INFO] b'test'
FC Invoke End RequestId: 1-65e045b1-123e1745-79e146cd8b01

Duration: 2.38 ms, Billed Duration: 3 ms, Memory Size: 128 MB, Max Memory Used: 8.78 MB
========= FC invoke Logs end =========

Invoke instanceId: c-65e045b1-12f566fe-ca21d8fe46f1
Code Checksum: 3418420950487476908
Qualifier: LATEST
RequestId: 1-65e045b1-123e1745-79e146cd8b01

Invoke Result:
test
✔ [hello_world] completed (0.46s)

A complete log of this run can be found in: /Users/x1/.s/logs/0229165200

El campo Invoke Result muestra test, lo cual confirma que la función procesó la entrada correctamente.

Paso 6: Limpiar los recursos (opcional)

Elimine la función cuando ya no la necesite:

sudo s remove

Seleccione yes cuando el sistema lo solicite para confirmar la eliminación.

Salida esperada:

   Steps for [remove] of [hello-world-app]
====================
Remove function: cn-huhehaote/start-python-8i32

     ? Are you sure you want to delete the resources listed above yes
✔ [hello_world] completed (11.67s)

A complete log of this run can be found in: /Users/x1/.s/logs/0229165500