IBM Cloud Docs
了解 Code Engine

了解 Code Engine

IBM Cloud® Code Engine (或 "Code Engine") 由 IBM 开发,旨在帮助您创建现代,以源为中心,容器化和无服务器的应用程序和作业。 该平台旨在满足只想让其代码运行的开发人员的需求。Code Engine 将在 Kubernetes 中构建,部署和管理工作负载的操作负担抽象化,以便开发者可以关注对他们最重要的内容: 源代码。

Code Engine 的优点

查看 Code Engine 提供的用于运行工作负载的功能。

Code Engine效益
功能 描述
运行工作负载 Code Engine 运行 HTTP 驱动的应用程序和运行到完成的批处理作业。
完全受管服务 Code Engine 负责所有集群管理,包括供应,配置,缩放和管理服务器,因此您无需担心底层基础结构。
构建代码 Code Engine 将提取源代码并为您创建容器映像。Code Engine 支持 Dockerfile 和 Cloud Native Buildpack。
专用工作负载 将源代码存储在专用存储库中,并将映像推送到专用注册表,Code Engine 可以访问这些注册表。
完全集成 Code Engine 已完全集成到 IBM Cloud 中,以便您可以利用 IBM Cloud 服务的完整目录。
事件驱动的工作负载 使用来自事件生产者的消息 (事件) 扩展应用程序的功能。 然后,应用程序可以对这些事件作出反应,并根据这些事件执行操作。
自动缩放-甚至为零 Code Engine 会自动向上和向下扩展工作负载,甚至在没有处于活动状态的请求时向下扩展为零。 您只需为所使用的资源付费。
控制访问权 在IBM Cloud Identity and Access Management中为您的项目分配平台和服务访问权限,以控制谁可以在您的IBM Cloud帐户中配置和管理资源。
基于开源 Code Engine 是基于一组开放式源代码技术 (例如 Kubernetes,Knative,Istio 和 Tekton) 构建的,可使应用程序和作业保持可移植。
DDoS 保护 Code Engine 为应用程序提供即时 DDoS 保护。Code Engine的 DDoS 保护由 Cloud Internet Services (CIS) 提供,无需额外费用。 DDoS 保护涵盖系统互连 (OSI) 层 3 和层 4 (TCP/IP) 协议攻击,但不包括层 7 (HTTP) 攻击。 请参阅 DDoS 保护

Code Engine 术语

通过查看以下关键术语,了解有关 Code Engine 的基础知识。 之后,您可以测试自己的知识,并 进行测验!

Code Engine术语
术语 描述
应用程序 应用程序或应用程序运行代码以处理 HTTP 请求。 除了传统 HTTP 请求外,IBM Cloud® Code Engine 还支持使用 WebSockets 作为其通信协议的应用程序。 将根据入局请求和配置设置自动向上或向下扩展应用程序的运行实例数 (为零)。 应用程序包含一个或多个修订版。 修订版表示应用程序的配置属性的不可改变版本。 每次更新应用程序配置属性都会创建应用程序的新修订版。
构建 构建或映像构建是一种可用于从源代码创建容器映像的机制。Code Engine 支持从 Dockerfile 和 Cloud Native Buildpack 进行构建。
代码束 代码束是表示函数代码的文件的集合。 此代码束将注入到运行时容器中。 代码束由 Code Engine 创建,并存储在容器注册表中或与函数直接插入。 代码束不是开放式容器计划 (OCI) 标准容器映像。
代码存储库 代码库(如GitHub或GitLab,存储源代码。 通过 Code Engine,您可以添加对专用代码存储库的访问权,然后从构建引用该存储库。
配置映射 configmap 提供了一种方法,用于将非敏感数据信息包含到部署中。 通过将 configmap 中的值作为环境变量进行引用,可以将特定信息与部署分离,并使应用程序,作业或功能可移植。 configmap 包含键/值对中的信息。
容器映像注册表 容器注册表或注册表是存储容器映像的服务。 例如,IBM Cloud Container Registry 和 Docker Hub 是容器注册表。 容器注册表可以是公用或专用的。 公共容器注册表不需要凭证即可访问。 相反,访问专用注册表需要凭证。
功能 函数是无状态代码片段,用于执行由 HTTP 请求调用的任务。 通过 IBM Code Engine 功能,您可以采用可扩展且无服务器的方式运行业务逻辑。 IBM Code Engine 功能提供优化的运行时环境,以支持低延迟和快速向外扩展方案。 可以在包含特定 Node.js 或 Python 版本的受管运行时中编写函数代码。
作业 作业并行运行可执行代码的一个或多个实例。 与处理 HTTP 请求的应用程序不同,作业设计为运行一次并退出。 创建作业时,可以指定每次运行作业时使用的工作负载配置信息。
项目 项目是 Code Engine 实体 (例如应用程序,作业和构建) 的分组。 项目基于 Kubernetes 名称空间。 项目的名称在 IBM Cloud® 资源组,用户帐户和区域中必须唯一。 项目用于管理资源并提供对其实体的访问权。 项目提供以下项。
-提供实体名称的唯一名称空间。
-管理对项目资源的访问 (入站访问)。
-管理对支持服务,注册表和存储库的访问 (出站访问)。
-具有自动生成的传输层服务 (TLS) 证书。
私钥 私钥提供了一种方法,用于将敏感配置信息 (例如密码或 SSH 密钥) 包含到部署中。 通过引用私钥中的值,可以将敏感信息与部署分离,以保持应用程序,功能或作业可移植性。 有权访问您的项目的任何人也可以查看您的私钥; 请确保您知道可以与这些用户共享私钥信息。 私钥包含键/值对中的信息。
服务绑定 服务绑定提供对 IBM Cloud 服务的应用程序,作业和功能访问权。
预订 预订提供了一种注册以从特定事件生产者接收事件的方法。 有关不同类型的事件生产者以及如何预订这些生产者的更多信息,请参阅 预订事件生产者