开始使用 Code Engine REST API
您可以使用 IBM Cloud® Code Engine API 来创建和管理 Code Engine 实体。
设置应用程序接口环境
要使用 API 来创建和管理 Code Engine 实体,请设置 API 环境。
开始之前,请 下载并安装 jq
工具,这是一个轻量级且灵活的命令行 JSON 处理器。 此工具使您能够更轻松地使用从 Code Engine API 收到的 JSON 响应。
-
在 API 中运行示例 Curl 命令之前,请设置
region
,api_key
和project_name
的值。 例如region=us-south api_key=YOUR_IBM_CLOUD_API_KEY project_name=MY_PROJECT_NAME
- 要发现您登录到的 IBM Cloud 区域,请运行
ibmcloud region
命令。 - 有关 IBM Cloud API 密钥的更多信息,请参阅 管理用户 API 密钥。
- 有关 Code Engine 项目的更多信息,请参阅 管理项目。
- 要发现您登录到的 IBM Cloud 区域,请运行
-
检查您是否具有有效的 IBM Cloud® Identity and Access Management (IAM) 访问令牌。 有关 IAM API 的更多信息,请参阅 使用 API 密钥为用户或服务标识创建 IAM 访问令牌。
token=`curl -X POST "https://iam.cloud.ibm.com/identity/token" \ -H "Content-Type: application/x-www-form-urlencoded" \ -H "Accept: application/json" \ -d "grant_type=urn:ibm:params:oauth:grant-type:apikey" \ -d "apikey=${api_key}" \ | jq .access_token -r`
-
使用认证令牌和您在步骤 1 中定义的变量来检索项目的项目标识。 在以下示例中,将
curl
与jq
配合使用以解析 Code Engine API 响应并将项目标识保存在变量中。 例如project_id=`curl -X GET "https://api.${region}.codeengine.cloud.ibm.com/v2/projects" \ -H "Authorization: ${token}" \ | jq --arg project_name ${project_name} '.projects[] | select(.name == $project_name) | .id' -r`
在 API 中使用 Code Engine 应用程序
现在,已设置 Code Engine API 环境,您已准备好使用 Code Engine 实体,例如应用程序或作业。 在以下场景中,让我们创建一个应用程序,对其进行访问,然后删除该应用程序。
-
创建应用程序。 使用先前设置的变量和项目标识来构造 URL 并发送请求以创建
my-app
应用程序。 例如curl -X POST "https://api.${region}.codeengine.cloud.ibm.com/v2/projects/${project_id}/apps" \ -H "Authorization: ${token}" \ -H "Content-Type: application/json" \ -d '{ \ "name": "my-app", \ "image_reference": "icr.io/codeengine/helloworld" \ }'
-
要显示有关
my-app
应用程序的详细信息,请发送GET
请求。 请确保引用应用程序的名称。 请注意,jq
的最后一行是可选的,尽管它使输出更容易读取。curl -X GET "https://api.${region}.codeengine.cloud.ibm.com/v2/projects/${project_id}/apps/my-app" \ -H "Authorization: ${token}" \ -H "Content-Type: application/json" \ | jq .
-
要删除应用程序,请再次发送请求,但此时请使用
DELETE
方法而不是GET
方法。curl -X DELETE "https://api.${region}.codeengine.cloud.ibm.com/v2/projects/${project_id}/apps/my-app" \ -H "Authorization: ${token}" \ -H "Content-Type: application/json"
-
(可选) 如果您发送另一个
GET
请求以检索有关my-app
的信息,那么将收到404 error
,因为该资源不再存在。
示例输出
{
"errors": [
{
"code": "resource_not_found",
"message": "Resource not found."
}
],
"trace": "codeengine-api-34dc0040429941de8c9e02f0f1200af1",
"status_code": 404
}
后续步骤
既然您已设置环境,并已通过 API 对 Code Engine 应用程序执行了第一步,您是否准备好进一步探索 Code Engine API?
有关多种语言的 Code Engine SDK 的更多信息和示例,请参阅 Code Engine API 文档。
要开始使用 API 的 Code Engine 组件,请参阅
IBM Cloud® Code Engine 设计为无需与它所构建的底层技术进行交互。 但是,如果您有基于 Kubernetes 或 Knative 的现有工具,那么仍可以将其与 Code Engine配合使用。Code Engine 支持 Knative 和 Kubernetes API 及其 CLI 命令。 有关更多信息,请参阅 将 Kubernetes 与 Code Engine 和 将 Knative 与 Code Engine 配合使用。