You need to enable JavaScript to run this app.
导航

创建函数

最近更新时间2024.02.02 11:09:53

首次发布时间2022.04.15 14:52:33

函数服务中的函数,承担计算资源的管理工作。本文为您介绍如何创建函数。

背景信息

根据函数编程模型的区别,创建函数分为以下两种方式:

  • 创建「内置运行时函数」
    • 基于函数服务定义的接口编写代码函数。
    • 部署方式:代码包 部署。
    • 运行时:当前提供 Python 3.8Node.js 14.xGolang 等内置运行时环境。
  • 创建「Serverless 应用托管」【邀测·申请试用
    • 对原生 HTTP 框架应用进行托管。无需修改业务代码,在仅修改服务监听端口及服务启动脚本的情况下,便可平滑迁移至函数服务。
    • 部署方式:支持 代码包容器镜像 两种部署方式。
    • 运行时:基于 Native 运行时 环境。

前提条件

  • 已开通函数服务。
  • 首次使用函数服务,需完成跨服务授权。
  • 已在本地完成 代码开发
  • (可选)若需要访问私有网络 VPC,请确保已开通火山引擎私有网络,已在函数待部署地域创建私有网络、子网和安全组。详细操作请参见 创建私有网络创建子网创建安全组
  • (可选)若需要查看函数日志,请确保已开通火山引擎日志服务。其中,使用自定义日志项目投递函数日志时,需确保已创建日志项目和主题。详细操作请参见 创建日志项目创建日志主题
  • (可选)若使用自定义容器镜像部署,需参照 Native 函数开发指南,完成代码开发、镜像构建、镜像推送工作。

使用限制

  • 代码包部署
    • 函数创建过程中不支持上传代码包。函数创建完成后,才能在函数服务控制台上传代码。
  • 容器镜像部署
    • 容器镜像最大不能超过 1 GB。
    • 容器镜像必须推送至与函数同地域的火山引擎镜像仓库。
    • 函数创建完后,需等待镜像同步完成,才能进行函数发布。
    • 仅支持使用 API 网关触发器和 Timer 触发器。

创建「内置运行时函数」

  1. 登录 函数服务控制台

  2. 在顶部导航栏,选择目标地域。

  3. 在 函数列表 页面,单击 创建函数,选择 创建 「内置运行时函数」

    alt

    • 基础配置

      配置项说明
      函数名称自定义函数名称。同一账号下函数名称不可重复,函数名称创建成功后不支持修改。
      备注描述函数信息,可以为空。
    • 函数代码

      配置项说明
      运行时选择函数代码的运行时环境。

      部署方式

      本场景选择 函数模板。请根据需要选择合适的代码模板。
      单击 代码预览,可查看当前模板包含的资源文件和代码详情。

    • 高级配置
      详情请参见 函数配置

  4. 单击 确定,完成函数创建。

创建「Serverless 应用托管」

  1. 登录 函数服务控制台
  2. 在顶部导航栏,选择目标地域。
  3. 在 函数列表 页面,单击 创建函数,选择 创建「Serverless 应用托管」
    • 基础配置

      配置项说明
      函数名称自定义函数名称。同一账号下函数名称不可重复,函数名称创建成功后不支持修改。
      备注描述函数信息,可以为空。
    • 函数代码

      配置项说明
      运行时本场景仅支持 Native 运行时

      部署方式

      支持 容器镜像函数模板 两种方式,请按需选择。

      • 容器镜像:通过容器镜像方式进行部署。
        • 镜像仓库:从您的火山引擎镜像仓库中选择具体要部署的镜像。支持通过实例、命名空间和仓库类型(公有/私有)进行筛选。
        • 公共镜像(邀测):函数服务预置的开箱即用的镜像,可直接使用。

      说明

      • 公共镜像由社区开发者贡献,函数服务不参与维护,如遇软件使用问题请前往社区反馈。
      • 当前仅提供 Stable Diffusion v1.5 WebUI 镜像,后续将提供更多公共镜像。
      • 函数模板:通过代码包方式进行部署。请根据需要选择合适的代码模板。
        单击 代码预览,可查看当前模板包含的资源文件和代码详情。
    • 高级配置
      详情请参见 函数配置

  4. 单击 确定,完成函数创建。

后续步骤

  1. 对于通过代码包部署的函数,在当前函数的代码页签,根据需要对代码内容进行更新。
    其中, Node.js 和 Python 代码支持在线编辑和上传代码包,其他语言仅支持上传代码包。具体操作可参见 在线编辑上传代码
  2. 将函数的代码和配置发布至线上。具体操作可参见 发布函数