自定義鏡像開發(fā)函數(shù)
開發(fā)事件函數(shù)示例
步驟一:準(zhǔn)備環(huán)境
所有操作均默認(rèn)具有操作權(quán)限,請(qǐng)確保您登錄的用戶已有“FunctionGraph Administrator”權(quán)限,即FunctionGraph服務(wù)所有權(quán)限,更多權(quán)限的說明請(qǐng)參考權(quán)限管理。
步驟二:制作鏡像
以在linux x86 64位系統(tǒng)上制作鏡像為例。
1、創(chuàng)建一個(gè)空文件夾
2、以Nodejs語言為例,實(shí)現(xiàn)一個(gè)Http Server,處理函數(shù)初始化init請(qǐng)求和函數(shù)調(diào)用invoke請(qǐng)求并響應(yīng)。
3、創(chuàng)建一個(gè)main.js文件,引入express框架,實(shí)現(xiàn)Method為POST和Path為/invoke的函數(shù)執(zhí)行入口,實(shí)現(xiàn)Method為POST和Path為/init的函數(shù)初始化入口。
4、創(chuàng)建Dockerfile文件
5、構(gòu)建鏡像
指定鏡像的名稱為custom_container_event_example,版本為latest,“.”指定Dockerfile所在目錄,鏡像構(gòu)建命令將該路徑下所有的內(nèi)容打包給容器引擎幫助構(gòu)建鏡像。
步驟三:本地驗(yàn)證
啟動(dòng)docker容器
打開一個(gè)新的命令行窗口,向開放的8000端口發(fā)送消息,訪問模板代碼中指定的/init路徑
按照模塊代碼中返回
打開一個(gè)新的命令行窗口,向開放的8000端口發(fā)送消息,訪問模板代碼中指定的/invoke路徑
按照模塊代碼中返回
在容器啟動(dòng)端口可以看到
步驟四:上傳鏡像
登錄容器鏡像服務(wù)控制臺(tái),在左側(cè)導(dǎo)航欄選擇“我的鏡像”。
單擊右上角的“客戶端上傳”或“頁(yè)面上傳”。
根據(jù)指示上傳鏡像。
上傳成功后,在“我的鏡像”界面可查看
步驟五:創(chuàng)建函數(shù)
登錄函數(shù)工作流控制臺(tái),在左側(cè)的導(dǎo)航欄選擇“函數(shù) > 函數(shù)列表”。
單擊右上方的“創(chuàng)建函數(shù)”,進(jìn)入“創(chuàng)建函數(shù)”頁(yè)面,使用容器鏡像部署函數(shù)。
填寫基本信息。
完成后單擊“創(chuàng)建函數(shù)”。
在函數(shù)詳情頁(yè)“設(shè)置 > 高級(jí)設(shè)置”,開啟“初始化函數(shù)”,即調(diào)用init接口進(jìn)行初始化。
步驟六:測(cè)試函數(shù)
在函數(shù)詳情頁(yè),單擊“測(cè)試”,在彈窗中創(chuàng)建新的測(cè)試事件。
選擇“空白模板”,事件名稱輸入“helloworld”,完成后單擊“創(chuàng)建”。
步驟六:測(cè)試函數(shù)
在函數(shù)詳情頁(yè),單擊“測(cè)試”,在彈窗中創(chuàng)建新的測(cè)試事件。
選擇“空白模板”,事件名稱輸入“helloworld”,測(cè)試事件修改為如下所示,完成后單擊“創(chuàng)建”。
步驟七:查看執(zhí)行結(jié)果
單擊helloworld事件的“測(cè)試”,執(zhí)行后,在右側(cè)查看執(zhí)行結(jié)果,執(zhí)行結(jié)果如下圖。
圖1 執(zhí)行結(jié)果

“函數(shù)返回”顯示函數(shù)的返回結(jié)果。
“日志”部分顯示函數(shù)執(zhí)行過程中生成的日志。
“執(zhí)行摘要”部分顯示“日志”中的關(guān)鍵信息。
說明:此頁(yè)面最多顯示2K日志,了解函數(shù)更多日志信息,請(qǐng)參考查詢?nèi)罩尽?/p>
步驟八:查看監(jiān)控指標(biāo)
在函數(shù)詳情頁(yè)面,選擇“監(jiān)控”頁(yè)簽。
在“監(jiān)控”頁(yè)簽,先選擇“指標(biāo)”,再選擇時(shí)間粒度(5分鐘、15分鐘、1小時(shí)),查看函數(shù)運(yùn)行狀態(tài)。
可以查看的指標(biāo)有:調(diào)用次數(shù)、錯(cuò)誤次數(shù)、運(yùn)行時(shí)間(包括最大運(yùn)行時(shí)間、最小運(yùn)行時(shí)間、平均運(yùn)行時(shí)間)、被拒絕次數(shù)。
步驟九:刪除函數(shù)
在函數(shù)詳情頁(yè)面,單擊右上角的“操作 > 刪除函數(shù)”。
在確認(rèn)框繼續(xù)單擊“確認(rèn)”,及時(shí)釋放資源。
詳情參考:開發(fā)事件函數(shù)示例
開發(fā)HTTP函數(shù)示例
概述
使用自定義鏡像開發(fā)HTTP函數(shù)時(shí),用戶需要在鏡像中實(shí)現(xiàn)一個(gè)http server,并監(jiān)聽8000(下文示例中提及的8000端口請(qǐng)不要變動(dòng))端口接收請(qǐng)求。備注:HTTP函數(shù)只支持APIG觸發(fā)器。
開發(fā)步驟參考:開發(fā)HTTP函數(shù)示例
函數(shù)工作流 FunctionGraph 常見問題
函數(shù)工作流 FunctionGraph 常見問題
函數(shù)工作流 FunctionGraph 精選推薦
1對(duì)1咨詢專屬顧問
華為云咨詢電話:950808或4000-955-988 轉(zhuǎn)1
華為云咨詢電話:950808或4000-955-988 轉(zhuǎn)1