通过函数计算的 Custom Runtime,您可以在函数计算平台使用 Ruby 来编写函数。本文介绍快速部署和调用 Ruby 函数的详细步骤。

前提条件

您已安装 8.6.0 及以上版本的 Node.js。详情请参见官方下载地址
说明 如果您已安装 Funcraft 可直接跳转至步骤二:部署和调用函数

步骤一:准备环境

安装 Funcraft,最简单的方式就是直接下载可执行的二进制文件。

  1. 安装 Funcraft 到本机。详情请参见安装文档
  2. 执行 fun --version 检查安装是否成功。
  3. 执行 fun config 配置 Funcraft。然后按照提示依次配置 Account IDAccess Key IDAccess Key SecretDefault region name
    $ fun config
    Aliyun Account ID 1234xxx
    Aliyun Access Key ID xxxx
    Aliyun Access Key Secret xxxx
    Default region name cn-xxxx
    The timeout in seconds for each SDK client invoking 300
    The maximum number of retries for each SDK client 5
    Allow to anonynously report usage statistics to improve the tool over time? (Y/n)

步骤二:部署和调用函数

  1. 执行以下命令克隆示例工程到本地。
    git clone https://github.com/awesome-fc/fc-custom-demo          
    说明 如果您没有安装 git,可以直接在浏览器地址栏输入 https://github.com/awesome-fc/fc-custom-demo,然后单击下载按钮直接下载。
  2. 执行以下命令进入克隆的示例项目中。
    cd ruby-demo        
  3. 执行以下命令将项目部署至函数计算。
    $fun deploy -y
    ...
    Waiting for service ruby-demo to be deployed...
            Waiting for function fc-ruby to be deployed...
                    Waiting for packaging function fc-ruby code...
                    The function fc-ruby has been packaged. A total of 4 files were compressed and the final size was 1.45 KB
            function fc-ruby deploy success
    service ruby-demo deploy success     
  4. 执行以下命令调用部署的函数。
    $ fun invoke -e "Hello World"
    ...
    ========= FC invoke Logs begin =========
    FC Invoke Start RequestId: a9c4dc8a-4b5b-48e0-9a3f-70310531ae61
    Hello World
    FC Invoke End RequestId: a9c4dc8a-4b5b-48e0-9a3f-70310531ae61
    
    Duration: 0.69 ms, Billed Duration: 100 ms, Memory Size: 512 MB, Max Memory Used: 5.06 MB
    ========= FC invoke Logs end =========
    
    FC Invoke Result:
    Hello World