背景
本文介绍如何在函数计算控制台创建容器镜像函数。
注意事项
- 在函数计算中,创建容器镜像函数必须使用同一账号下相同地域内天翼云容器镜像服务(CRS)中的镜像。针对ARM架构的机器(如搭载M系列芯片的Mac电脑),构建镜像时需要指定镜像的编译平台为Linux/Amd64,示例命令如
docker build --platform linux/amd64 -t $IMAGE_NAME .
。 - 请确保您在函数配置中的镜像在发生任何变化后,及时更新您的函数,否则函数调用会失败。
- 请确保原始镜像存在,否则函数会无法调用。函数计算会对您的函数做缓存以加速冷启动,但是在调用过程中依然依赖原始镜像的存在。
- 请确保您在任何函数中使用的镜像不要被覆盖,如果被覆盖为其他的Digest,请及时使用最新的镜像信息重新部署您的函数。函数计算会记录您在创建和更新配置时所选择的镜像版本Tag和Digest,如果使用的镜像被更新为其他的Digest,函数将调用失败。
前提条件
- 开通容器镜像服务,创建CRS实例,创建命名空间,创建镜像仓库。
说明容器镜像个人版面向个人开发者,公测限额免费试用,无SLA承诺和受损赔偿,且有使用限制。
在控制台创建函数
登录函数计算控制台,在顶部菜单栏,选择地域。
在左侧导航栏,单击函数,然后在函数页面,单击创建函数。
在创建函数页面,选择使用容器镜像方式,按需设置以下配置项,然后单击创建。
基本设置:设置函数名称。
镜像配置:配置创建函数的镜像。
配置项 | 说明 |
---|---|
镜像选择方式 | 您可以使用示例镜像或者您自己的镜像创建函数。 使用示例镜像:选择函数计算自带的示例镜像。 使用 CRS 中的镜像:单击配置项容器镜像下方的选择 CRS 中的镜像,在弹出的选择容器镜像面板,选择已创建的容器镜像实例和CRS 镜像仓库,然后在下方选择镜像区域找到目标镜像并在其右侧操作列单击选择。 请确保您在函数配置中的镜像在发生任何变化后,及时更新您的函数,否则函数调用会失败。 请不要删除原始镜像以及加速镜像,否则会影响函数调用。 |
启动命令 | 容器的启动命令。如果不填写,则默认使用镜像中的Entrypoint或者CMD。 |
监听端口 | 容器镜像中的HTTP Server所 监听的端口。默认端口为9000。配置端口后,需要保证惊镜像内http server 监听。 |
高级配置:配置函数的实例相关信息、执行超时时间和网络设置等。
配置项 | 说明 |
---|---|
规格方案 | 选择或手动输入合理的vCPU规格和内存规格组合。vCPU大小(单位为核)与内存大小(单位为GB)的比例必须设置在1:1到1:4之间。 |
临时硬盘大小 | 根据您的业务情况,选择硬盘大小。函数计算为您提供512 MB以内的磁盘免费使用额度。 |
执行超时时间 | 设置超时时间。默认为60秒,最长为86400秒(24小时)。超过设置的超时时间,函数将以执行失败结束。 |
实例并发度 | 设置函数实例的并发度。 |
时区 | 选择函数的时区。此处设置函数的时区后,将自动为函数添加一条环境变量TZ,其值为您设置的目标时区。 |
函数角色 | 如果您的代码逻辑需访问其他云服务,请创建角色并为角色最小化授予访问其他云服务的权限。 |
允许访问 VPC | 是否允许函数访问VPC内资源。 |
专有网络 | 允许访问 VPC选择是时必填。创建新的VPC或在下拉列表中选择要访问的VPC ID。 |
子网 | 允许访问 VPC选择是时必填。创建新的子网或在下拉列表中选择子网ID。 |
安全组 | 允许访问 VPC选择是时必填。创建新的安全组或在下拉列表中选择安全组。 |
允许函数默认网卡访问公网 | 是否允许函数可以通过默认网卡访问公网。关闭后,当前函数将无法通过函数计算的默认网卡访问公网。使用固定公网IP地址功能时,您必须关闭允许函数默认网卡访问公网。 |
环境变量:设置函数运行环境中的环境变量。更多信息,请参见配置环境变量。
创建完成后,您可以在函数列表中查看和更新已创建的函数。