如何在Azure Portal中为Azure Linux Functions使用自定义镜像
Azure Portal 为Linux型Azure Functions使用自定义镜像操作步骤
前置准备
- 提前将构建好的自定义镜像上传到可访问的容器注册表(支持Azure Container Registry、Docker Hub等,私有镜像需提前准备好访问凭证)
- 确保镜像符合Linux Functions运行规范:内置对应语言的Functions运行时、开放
80端口作为服务端口、启动命令正确指向Functions runtime启动指令,函数代码可直接打包进镜像或通过存储挂载的方式外置
具体操作步骤
场景1:新建使用自定义镜像的Function App
- 登录Azure Portal,进入「创建资源」页面,搜索并选择「Function App」,点击「创建」
- 基础信息页配置:
- 选择对应订阅、资源组,填写自定义的Function App名称
- 「发布」选项选择容器
- 操作系统选择Linux
- 按需求选择对应区域、计划类型(消费计划、弹性高级计划、专用计划均支持自定义镜像)
- 切换到「容器」标签页配置镜像来源:
- 镜像存放在Azure Container Registry:选项选择「Azure Container Registry」,下拉选择对应的注册表、镜像名、镜像标签即可
- 镜像存放在Docker Hub或其他第三方 registry:选项选择「Docker Hub 或其他注册表」,填写注册表服务器地址、镜像完整名称(含命名空间、标签),私有镜像需额外填写注册表的管理员用户名和密码
- 后续监控、标签等配置按需填写,确认信息无误后点击「审阅+创建」,等待资源部署完成即可
场景2:修改已有Linux Function App为自定义镜像部署
- 进入目标Function App的详情页,左侧导航栏找到「部署」分类下的「部署中心」
- 「设置」标签页的「源」选项选择容器注册表
- 按照镜像实际存放位置,填写对应注册表信息、镜像信息,配置完成后点击「保存」,平台会自动拉取新镜像重新部署实例
部署验证
- 部署完成后进入Function App「概览」页,点击默认域名访问,确认服务正常启动
- 可进入「日志流」页面查看容器启动日志,快速排查镜像拉取、服务启动阶段的异常问题
- 消费计划下首次冷启动耗时和镜像大小正相关,建议尽量精简镜像体积减少启动等待时间
常见注意事项
若需要持久化存储函数相关文件,不要修改
WEBSITES_ENABLE_APP_SERVICE_STORAGE配置,保持默认true即可
镜像更新后需要重新部署的,可修改镜像标签后重新配置,也可以开启「持续部署」开关,镜像对应标签更新时平台会自动触发拉取部署
消费计划下自定义镜像最大允许体积为15GB,超出后会出现镜像拉取失败问题
内容的提问来源于stack exchange,提问作者DaiKeung
相关产品推荐
相关产品推荐

