检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
配置函数的环境变量 概述 环境变量可以在不修改代码的情况下,将动态参数传递到函数,调整函数的执行行为。 应用场景 区分多环境:相同的函数逻辑,可根据部署环境的不同,配置不同的环境变量以区分。例如,通过环境变量给测试和开发环境配置不同的数据库。 配置加密:函数中访问其他服务的认证信息
Node.js 开发事件函数 开发HTTP函数 nodejs模板 制作依赖包
创建Next.js项目 本案例以Next.js框架的默认demo为例演示部署过程,需要在Linux环境中创建一个全新的Next.js项目,本案例采用本地运行Docker node:18.15.0镜像的方式,同样适用于其他Linux系统。关于Docker镜像和Linux操作系统的使用并非本案例主要内容
产品功能 函数管理 提供控制台管理函数。 函数支持Node.js、Java、Python、Go、PHP、Cangjie等多种运行时语言,同时支持用户自定义运行时,说明如表1所示。 建议使用相关语言的最新版本。 表1 运行时语言说明 运行时语言 支持版本 Node.js 6.10、8.10
开发HTTP函数 本章节通过HTTP函数部署koa框架,更多HTTP详情,请参见创建HTTP函数。 前提条件 准备一个bootstrap启动文件,作为HTTP函数的启动文件。举例如下: /opt/function/runtime/nodejs14.18/rtsp/nodejs/bin
开发事件函数 函数定义 建议使用Node.js 12.13版本。 Node.js 6.10函数定义 Node.js6.10 函数的接口定义如下所示。 export.handler = function(event, context, callback) 入口函数名(handler)
Node.js SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Node.js SDK信息说明 SDK信息 说明 安装 npm i @huaweicloud/huaweicloud-sdk-functiongraph
制作依赖包 制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库
通过FunctionGraph部署Next.js项目 方案概述 创建Next.js项目 创建依赖包 构建程序 处理结果
nodejs模板 exports.handler = async (event, context) => { const output = { 'statusCode': 200, 'headers': {
方案概述 前提条件 已拥有华为云账号且已实名认证。 华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 已创建OBS桶,用于存放打包好的依赖包文件,更多详情请参见创建桶。 开始使用本案例前请在本地安装好18.15.0版本的Node.js运行环境。 当前华为云函数工作流服务支持的
构建程序 创建函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,右上角单击“创建函数”。 进入创建函数页面,选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。 函数类型:选择“HTTP函数”。 区域:选择“华东-上海一”。 函数名称:输入您自定义的函数名称
创建依赖包 操作步骤 本案例的依赖包如果使用Linux安装,会出现软连接导致的依赖缺失错误,因此需要删除现有“node_modules”子目录。 在Windows系统中重新安装,操作步骤如下: 退出Docker容器(原生Linux系统忽略)。 exit 删除项目目录中的“node_modules
处理结果 在Nextjs-app函数详情页面,选择“设置 > 触发器”,复制APIG触发器的调用URL。 图1 复制APIG触发器URL 在浏览器中打开URL,即可看到如图2页面。 图2 返回结果 父主题: 通过FunctionGraph部署Next.js项目
导入导出函数 函数是实现某一功能所需代码、运行时、资源、设置的组合,是可以独立运行的最小单元。函数通过Trigger触发,自行调度所需资源及环境,实现预期功能。 导出函数 FunctionGraph支持将已创建的函数导出。 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表
使用容器镜像创建并执行HTTP函数 本章节将以使用容器镜像方式创建HTTP类型函数为例,介绍容器镜像函数的创建及测试过程。此过程中用户需要在镜像中实现一个http server,并监听8000(下文示例中提及的8000端口请不要变动)端口接收请求。备注:HTTP函数只支持APIG触发器
安装 Serverless是一个Node.js CLI工具,因此您需要先在计算机上安装Node.js。 请访问Node.js官方网站,下载并按照安装说明在本地计算机上安装Node.js。 您可以通过在终端中运行node --version来验证Node.js是否安装成功,即可以看到打印出来的对应
创建函数 功能介绍 创建指定的函数。 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/fgs/functions 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户项目 ID,获取方式请参见获取项目ID
FunctionGraph业务使用流程 函数工作流FunctionGraph是一项基于事件驱动的函数托管计算服务。使用FunctionGraph函数,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。此外,按函数实际执行资源计费
使用空白模板创建并执行函数 本章节介绍如何在函数工作流控制台使用空白模板快速开发一个简单的Hello World函数。该章节以创建HelloWorld事件函数为例,介绍函数的创建及测试过程,供您快速体验FunctionGraph函数的基本功能。 准备工作 注册华为账号并实名认证。