Azure Function Docker 无法使用 http 触发器

2024-04-30

最近,我使用具有 HttpTrigger 的 Azure Function(节点)创建了一个 docker 映像。这是默认生成的基本 HttpTrigger。我正在 Macbook Pro (MoJave) 上开发此程序,并且安装了以下工具。

NodeJs - 节点/10.13.0 适用于 macOS 的 .NET Core 2.1 Azure Function 核心工具(通过brew)

当我使用“func host start”在本地运行该函数时,一切正常,我可以看到函数加载消息。我还能够使用触发端点执行 Azure 函数。但是,当我尝试构建 Docker 容器并运行相同的容器时,我可以加载应用程序的主页,但无法到达函数端点。在日志中我只能看到以下内容;

Hosting environment: Production
Content root path: /
Now listening on: http://[::]:80
Application started. Press Ctrl+C to shut down.

我的 Docker 文件如下(由 Azure 核心工具生成);

FROM mcr.microsoft.com/azure-functions/node:2.0
ENV AzureWebJobsScriptRoot=/home/site/wwwroot
COPY . /home/site/wwwroot

当我尝试使用“microsoft/azure-functions-runtime:v2.0.0-beta1”作为基础映像时,我可以看到函数加载并且也可以访问http触发器。

是否缺少任何内容或者我需要使用不同的图像?


  1. 在 Dockerfile 中添加ENV AzureFunctionsJobHost__Logging__Console__IsEnabled=true要启用日志记录,设置为基本图像中省略 https://github.com/Azure/azure-functions-host/issues/3469#issuecomment-429183447所以我们现在必须手动完成。

  2. 如果出现 401 Unauthorized,找到文件 function.json,将 authLevel 更改为anonymous如果它是function(模板中的默认值)。我们无法在具有 authlevel 之外的本地容器中访问 http 触发器anonymous。因为我们没有功能键 https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-http-webhook#authorization-keys然而,在我们使用容器创建 Function 应用程序后,它们就可用了。

    至于为什么我们可以访问http触发器function当我们使用时的authlevelfunc host start在容器外,本地运行时无论指定的身份验证级别如何,都会禁用授权。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Azure Function Docker 无法使用 http 触发器 的相关文章

随机推荐

  • UIModalTransitionStylePartialCurl 在 iOS 8 上消失

    我试图向我的 ViewController 展示 UIModalTransitionStylePartialCurl 转换 我正在使用以下代码 PuzzleViewController vc PuzzleViewController all
  • Pygame:居中文本系统字体文本

    我读过这篇关于居中文本的文章 Pygame 如何使文本居中 https stackoverflow com questions 23982907 python library pygame centering text 但是 不是从文件导入
  • 开发目录结构[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 iPhone 版 gmap 中的经纬度计算两个地点之间的距离 [重复]

    这个问题在这里已经有答案了 可能的重复 GPS 坐标 以度为单位 来计算距离 https stackoverflow com questions 6994101 gps coordinates in degrees to calculate
  • 获取 iPhone 文档目录。 NSSearchPathForDirectoriesInDomains 仍然是唯一的方法吗?

    Is the NSSearchPathForDirectoriesInDomainss 函数仍然是获取 iPhone Documents 目录路径的最佳方法吗 我之所以这么问 是因为我看到的大多数主题都是去年的 而且这似乎仍然是获取 iPh
  • 将 Django/Python 3.4 部署到 Heroku

    我正在尝试使用 Django Heroku 入门教程使用 Django Heroku 部署我的第一个示例应用程序 我的工具 Python 3 4 和 Windows 7 PowerShell 我的挑战 部署到 Heroku 失败 我不知道为
  • App.config 连接字符串相对路径

    我需要在 app config 中设置 sqlite 连接字符串 我想设置相对于调试 发布文件夹的路径 数据库文件将复制到这些文件夹
  • Windows命令行参数编码是什么?

    Windows 使用什么编码来传递给在 cmd exe 窗口中启动的程序的命令行参数 命令行参数的编码似乎不受使用控制台代码页设置的影响chcp 我将其设置为 UTF 8 代码页 65001 并使用 Lucida Console 字体 如果
  • Python 中的静态变量?

    在 C 中 我们有 static 关键字 它在循环中是这样的 for int x 0 x lt 10 x for int y 0 y lt 10 y static int number of times 0 number of times
  • 不循环查找

    我有两个表 我正在尝试从一个表中查找值以添加到另一个表中的值 目前我正在使用两个 for 循环 但它们运行缓慢 我是 R 新手 知道我应该避免循环以加快速度 但我不知道如何做 表1 几千行 37列 type cat1 cat2 cat3 c
  • C++ 的异步函数调用

    我需要提示如何在 C C 中实现异步函数调用 或 Windows 和 或 Linux 的框架 API 调用的名称 用例如下 父线程调用函数 该函数创建一个子线程并返回 因此调用是非阻塞的 父线程可以继续执行某些工作 例如 pthread j
  • React PropTypes:数字范围

    有没有更好的方法来验证如果数字在范围内 避免写作 PropTypes oneOf 1 2 3 4 5 6 7 8 9 10 根据文档 https reactjs org docs typechecking with proptypes ht
  • Sentry django 配置 - 记录器

    我正在尝试使用简单的日志记录并希望将错误 异常发送到 Sentry 我按照文档配置了 Sentry 并在我的开发人员上成功运行了测试 python manage py raven test 我添加了日志记录配置 如下所示哨兵文档 https
  • 使用 Struts 2 的 RESTful Web 服务

    我们正在评估一种教育活动设计 我们希望以 RESTful Web 服务的形式创建完整的后端 处理业务逻辑 这些服务可供各种应用程序使用 从 Struts 2 框架调用这些 Web 服务是个好主意吗 我读了几篇文档 但人们不鼓励这样做 我们很
  • REST 服务上的错误请求错误 使用 POST(json 数据)调用方法?

    您好 我是 RESTful WCF 的新手 我正在尝试使用 POST 对 Web 服务方法进行简单调用 这是我的代码 Service Interface code ServiceContract public interface IJson
  • 对于包含“+”的 Artifact 版本,Azure Artifact 发布失败

    我一直在尝试将 java 模块 jar 的工件发布到 Azure Artifact 但收到错误 404 经过一段时间的调试我已经意识到我的语义版本 https semver org spec item 10破坏了 URL 1 0 2 bet
  • Ruby Koans #75 test_constants_become_symbols,正确答案?

    我的问题建立在这个问题的基础上 Ruby Koan 常量变成符号 https stackoverflow com questions 5358727 ruby koan constants become symbols 我有以下代码 in
  • 使用MySqlCommand参数时如何查看命令字符串?

    代码如下 MySqlCommand cmd new MySqlCommand SELECT FROM DB name here WHERE some field some value cmd Parameters AddWithValue
  • 该应用程序引用 Payload Capacitor.Framework STATE_ERROR.VALIDATION_ERROR.50 中的非公共选择器

    今天 我在尝试将电容器应用程序上传到 App Store 时遇到了问题 该应用程序是在几天前发布的 据我了解 上传的任何关键内容都没有改变 我收到的错误也没有说明实际问题 The error looks the following 并说 该
  • Azure Function Docker 无法使用 http 触发器

    最近 我使用具有 HttpTrigger 的 Azure Function 节点 创建了一个 docker 映像 这是默认生成的基本 HttpTrigger 我正在 Macbook Pro MoJave 上开发此程序 并且安装了以下工具 N