函数计算FC 应用发布

更新时间:
复制 MD 格式

流水线Flow提供了阿里云函数计算(FC)部署发布能力。支持使用OSS中保存的函数zip代码包,发布部署到阿里云函数计算。函数计算(Function Compute)是一个事件驱动的全托管 Serverless 计算服务。您无需管理服务器等基础设置,只需编写代码并上传。函数计算会为您准备好计算资源,并以弹性、可靠的方式运行您的代码。

前提条件

如果选择使用OSS源码类型,请确保以下步骤已准备完成。

  • 请确保已创建配置完成对象存储OSS实例,具体操作请参阅文档创建存储空间。

  • 请确保已创建函数实例,配置事件请求或者HTTP请求类型函数和OSS上传代码方式,函数提供了多种上传代码方式,请根据需求选择合适的方式。具体操作请参阅文档管理函数。

步骤一:新建流水线

  1. 登录流水线Flow服务控制台,在控制台界面,请单击右侧上方新建流水线按钮。

  2. 在弹出窗口中,根据需求选择合适的流水线模板,本文选择使用了空模板,单击创建按钮。

步骤二:配置流水线-部署函数计算FC

添加任务节点,单击空任务节点,在编辑页面配置参数。

参数

说明

任务名称

自定义任务名称。

构建集群

根据需求选择默认或者私有构建集群区域。

构建环境

根据需求选择合适的构建环境。

说明

任务执行期间,流水线任务构建环境分配给用户使用,构建环境使用权限归属用户,任务执行脚本由用户自定义。

下载流水线源

任务级设置,作用于该任务下的所有步骤,不支持按单个步骤单独勾选。根据需求选择是否下载流水线源码。

在任务步骤配置项,请单击右侧添加步骤,在弹出菜单中选择发布,单击阿里函数计算部署任务添加到任务步骤配置项。

参数

说明

步骤名称

自定义任务名称。

选择服务链接

必填。单击右侧添加服务链接,完成Flow访问FC服务的授权,单击创建按钮,完成选择服务链接。

地域

必填。选择函数计算FC目标实例所属区域。

服务名

选择函数计算FC目标实例所属的自定义服务名。

函数名

选择函数计算FC目标实例函数名称,即部署的目标函数名称。

选择源码类型,不同的源码类型,有不同参数配置,根据需求选择合适的进行配置。

OSS ZIP 文件

使用OSS ZIP 文件源码类型时,OSS 中的 zip 代码包需先由流水线构建产出,再上传到 OSS。以 Node.js 项目为例:

  1. 添加安装 Node 环境步骤,选择与 FC 函数运行时匹配的 Node 版本。

  2. 添加执行命令步骤,执行 npm install 安装依赖。

  3. 添加执行命令步骤,将包含 node_modules 的完整目录打包为 zip,例如 zip -r code_${BUILD_NUMBER}.zip .。zip 包中必须包含 node_modules 目录,否则函数运行时会因找不到依赖模块而调用失败。

  4. 添加OSS上传步骤,将 zip 包上传到 OSS Bucket。

  5. 添加阿里函数计算部署步骤,源码类型选择OSS ZIP 文件,从 OSS 拉取上述代码包完成部署。

流水线中各步骤的命令上下文相互独立,不能跨步骤共享 shell 变量;上述安装依赖、打包、上传、部署需拆成独立步骤依次配置。

本段内容仅适用于OSS ZIP 文件源码类型;若使用制品包方式部署,参见本文「Node.js 构建并部署」章节。

  1. 配置参数OSS Bucket,选择已创建的目标Bucket名称。

  2. 配置参数OSS Object Name,选择已经在目标存储桶Bucket实例中自定义的文件路径。

    说明
    • 在OSS实例中“OSS Object Name”为文件的相对路径,例如:'test/fc.zip',支持使用环境变量自定义文件名,以区分每次流水线运行产出的代码包。例如填写 code_${BUILD_NUMBER}.zip,其中 BUILD_NUMBER 为流水线运行编号,从 1 开始随每次运行自增。OSS Object Name 需与上传该 zip 包的OSS上传步骤中配置的对象名保持一致,否则部署时会因找不到代码包而失败。

    • 请确保OSS存储桶实例中已经上传xxx.zip代码包。

Node.js 构建并部署

将 Node.js 项目部署到函数计算 FC 时,需在任务步骤中依次添加以下步骤,完成构建后再执行 FC 部署:

  1. 添加安装 Node 环境步骤,选择与 FC 函数运行时匹配的 Node 版本。

  2. 添加执行命令步骤,运行npm install安装依赖;如项目包含 build 脚本,执行npm run build完成打包。

  3. 添加阿里函数计算部署步骤,选择服务连接,配置地域和目标函数名称。

  4. 在源码类型中选择制品包,配置参数代码目录:

    • 根据制品包结构选择对应目录;若入口位于包根目录,填写./。

    • 代码目录指定的部署文件须与函数入口文件一致,否则部署后函数将无法正常调用。

自定义镜像

  1. 添加流水线源任务,配置代码源,根据需求选择使用的代码托管仓库。

  2. 配置参数代码路径,根据您的环境设置代码路径,填写符号点表示当前目录路径。

步骤三:运行并查看目标流水线任务

  1. 在流水线Flow控制台界面我的流水线列表,单击目标流水线右侧image运行按钮,单击目标流水线名称,查看流水线任务节点状态。

  2. 运行流水线任务完成后,在部署函数计算FC任务节点,右下方单击日志,查看到流水线任务的执行过程结果日志。