自定义镜像开发函数
开发事件函数示例
步骤一:准备环境
所有操作均默认具有操作权限,请确保您登录的用户已有“FunctionGraph Administrator”权限,即FunctionGraph服务所有权限,更多权限的说明请参考权限管理。
步骤二:制作镜像
以在linux x86 64位系统上制作镜像为例。
1、创建一个空文件夹
2、以Nodejs语言为例,实现一个Http Server,处理函数初始化init请求和函数调用invoke请求并响应。
3、创建一个main.js文件,引入express框架,实现Method为POST和Path为/invoke的函数执行入口,实现Method为POST和Path为/init的函数初始化入口。
4、创建Dockerfile文件
5、构建镜像
指定镜像的名称为custom_container_event_example,版本为latest,“.”指定Dockerfile所在目录,镜像构建命令将该路径下所有的内容打包给容器引擎帮助构建镜像。
步骤三:本地验证
启动docker容器
打开一个新的命令行窗口,向开放的8000端口发送消息,访问模板代码中指定的/init路径
按照模块代码中返回
打开一个新的命令行窗口,向开放的8000端口发送消息,访问模板代码中指定的/invoke路径
按照模块代码中返回
在容器启动端口可以看到
步骤四:上传镜像
登录容器镜像服务控制台,在左侧导航栏选择“我的镜像”。
单击右上角的“客户端上传”或“页面上传”。
根据指示上传镜像。
上传成功后,在“我的镜像”界面可查看
步骤五:创建函数
登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
单击右上方的“创建函数”,进入“创建函数”页面,使用容器镜像部署函数。
填写基本信息。
完成后单击“创建函数”。
在函数详情页“设置 > 高级设置”,开启“初始化函数”,即调用init接口进行初始化。
步骤六:测试函数
在函数详情页,单击“测试”,在弹窗中创建新的测试事件。
选择“空白模板”,事件名称输入“helloworld”,完成后单击“创建”。
步骤六:测试函数
在函数详情页,单击“测试”,在弹窗中创建新的测试事件。
选择“空白模板”,事件名称输入“helloworld”,测试事件修改为如下所示,完成后单击“创建”。
步骤七:查看执行结果
单击helloworld事件的“测试”,执行后,在右侧查看执行结果,执行结果如下图。
图1 执行结果
“函数返回”显示函数的返回结果。
“日志”部分显示函数执行过程中生成的日志。
“执行摘要”部分显示“日志”中的关键信息。
说明:此页面最多显示2K日志,了解函数更多日志信息,请参考查询日志。
步骤八:查看监控指标
在函数详情页面,选择“监控”页签。
在“监控”页签,先选择“指标”,再选择时间粒度(5分钟、15分钟、1小时),查看函数运行状态。
可以查看的指标有:调用次数、错误次数、运行时间(包括最大运行时间、最小运行时间、平均运行时间)、被拒绝次数。
步骤九:删除函数
在函数详情页面,单击右上角的“操作 > 删除函数”。
在确认框继续单击“确认”,及时释放资源。
详情参考:开发事件函数示例
开发HTTP函数示例
概述
使用自定义镜像开发HTTP函数时,用户需要在镜像中实现一个http server,并监听8000(下文示例中提及的8000端口请不要变动)端口接收请求。备注:HTTP函数只支持APIG触发器。
开发步骤参考:开发HTTP函数示例
函数工作流 FunctionGraph 常见问题
函数工作流 FunctionGraph 常见问题
函数工作流 FunctionGraph 精选推荐
1对1咨询专属顾问
华为云咨询电话:950808或4000-955-988 转1
华为云咨询电话:950808或4000-955-988 转1