如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
基于 OpenFaaS 的 Kubernetes 无服务器函数
"OpenFaaS 社区版 (CE) 授权用于个人探索和爱好者使用。商业概念验证 (PoC) 有 60 天限制。商业和生产工作负载需要 OpenFaaS Standard 或 OpenFaaS for Enterprises。"
faas-netes 是一个 https://github.com/openfaas/faas-provider%EF%BC%8C%E5%AE%83%E4%B8%BA https://github.com/openfaas/faas 启用了 Kubernetes 支持。它是更大技术栈的一部分,为 Kubernetes 带来了与云无关的无服务器体验。本仓库托管该提供程序的社区版 (CE),OpenFaaS Standard 和 OpenFaaS for Enterprises 使用单独的代码库和许可。
现有的 REST API、CLI 和 UI 完全兼容。使用 OpenFaaS Standard/Enterprise 时,您可以选择 operator 模式,以便通过 kubectl 和 CustomResource 管理函数。
您可以将 OpenFaaS 部署到任何 Kubernetes 服务——无论是托管服务还是本地服务,包括 OpenShift。您将在文档中找到任何特定说明和其他链接。
https://github.com/openfaas/faas 是一个使用 Docker 和 Kubernetes 构建无服务器函数的框架,它对指标提供一流支持。任何进程都可以打包为函数,使您能够无需重复编写样板代码即可处理各种 Web 事件。
图示:OpenFaaS 概念架构
其他生态系统特性:
社区:
商业选项:
了解更多:OpenFaaS Standard 和 For Enterprises
本文档的其余部分专门介绍控制器的技术和操作信息。
faas-netes 提供两种模式,operator 模式支持生产环境使用。controller 模式是遗留模式,将在未来版本中移除。我们无法为使用 controller 模式的新客户提供支持,且其功能可能与 operator 模式不完全一致。
controller 模式是 OpenFaaS 社区版 (CE) 的唯一选项。
另见:如何以及为何应升级到函数自定义资源定义 (CRD)
faas-netes 可通过环境变量配置,但完整选项集请参见 helm 图表。
| 选项 | 用途 |
|---|---|
httpProbe | 布尔值 - 为函数就绪和存活检查使用 HTTP 探针类型。默认值:true |
write_timeout | 从函数写入响应体的 HTTP 超时时间(秒)。默认值:60s |
read_timeout | 从客户端调用者读取有效负载的 HTTP 超时时间(秒)。默认值:60s |
image_pull_policy | 已部署函数的镜像拉取策略(Always、IfNotPresent、Never)。默认值:Always |
gateway.resources | CPU/内存资源请求/限制(内存:120Mi,CPU:50m) |
faasnetes.resources | CPU/内存资源请求/限制(内存:120Mi,CPU:50m) |
operator.resources | CPU/内存资源请求/限制(内存:120Mi,CPU:50m) |
queueWorker.resources | CPU/内存资源请求/限制(内存:120Mi,CPU:50m) |
prometheus.resources | CPU/内存资源请求/限制(内存:512Mi) |
alertmanager.resources | CPU/内存资源请求/限制(内存:25Mi) |
nats.resources | CPU/内存资源请求/限制(内存:120Mi) |
basicAuthPlugin.resources | CPU/内存资源请求/限制(内存:50Mi,CPU:20m) |
函数的就绪检查假设您使用我们的函数监控程序(function watchdog),该程序会在容器内的默认 "tempdir" 中写入 .lock 文件。要查看实际效果,您可以使用 kubectl exec 删除运行中 Pod 内的 .lock 文件,函数将被重新调度。
默认情况下,所有 OpenFaaS 函数和服务都部署在 openfaas 和 openfaas-fn 命名空间中。要更改命名空间,请使用 helm 图表。
默认情况下,已部署的函数将使用 Always 的 https://kubernetes.io/docs/concepts/containers/images/#updating-images%EF%BC%8C%E7%A1%AE%E4%BF%9D%E4%BD%BF%E7%94%A8%E9%9D%99%E6%80%81%E9%95%9C%E5%83%8F%E6%A0%87%E7%AD%BE%E7%9A%84%E5%87%BD%E6%95%B0%E5%9C%A8%E6%9B%B4%E6%96%B0%E6%97%B6%E8%A2%AB%E5%88%B7%E6%96%B0%E3%80%82
如果不需要此行为,OpenFaaS Pro 客户可以将 image_pull_policy 环境变量设置为其他值。IfNotPresent 在使用 minikube 本地开发时特别有用。在这种情况下,您可以将本地环境设置为https://kubernetes.io/docs/getting-started-guides/minikube/#reusing-the-docker-daemon%EF%BC%8C%E4%BB%A5%E4%BE%BF faas-cli build 直接构建到 minikube 的镜像存储中。在此工作流中无需执行 faas-cli push——使用 faas-cli build 然后 faas-cli deploy 即可。
[!NOTE] 当设置为
Never时,仅本地(或已拉取的)镜像可用。当设置为IfNotPresent时,使用静态镜像标签的函数部署可能不会更新。
faas-netes 维护者努力支持尽可能多的 Kubernetes 版本,目前兼容 Kubernetes 1.19 及更高版本。文档中也提供了 OpenShift 的相关说明。
您可以使用以下命令快速创建标准开发环境:
make start-kind
这将使用 https://github.com/kubernetes-sigs/kind 创建单节点集群,并通过 Helm 图表安装最新版本的 OpenFaaS。
有关工作流、流程和其他提示的更多详细信息,请查看 CONTRIBUTING.md 中的贡献者指南。
详见 LICENSE 文件。
来自真实用户的反馈,见证轩辕镜像的优质服务