Code Engine REST API 入门指南

您可以使用 IBM Cloud® Code Engine API来创建和管理您的 Code Engine 实体。

配置您的 API 环境

要使用 API 来创建和管理 Code Engine 实体,请设置 API 环境。

开始之前,请 下载并安装 jq 工具,这是一个轻量级且灵活的命令行 JSON 处理器。 此工具使您能够更轻松地使用从 Code Engine API 收到的 JSON 响应。

  1. 在 API 中运行示例 Curl 命令之前,请设置 regionapi_keyproject_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 项目的更多信息,请参阅 管理项目
  2. 检查您是否具有有效的 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`
    
  3. 使用认证令牌和您在步骤 1 中定义的变量来检索项目的项目标识。 在以下示例中,将 curljq 配合使用以解析 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 实体,例如应用程序或作业。 在以下场景中,让我们创建一个应用程序,对其进行访问,然后删除该应用程序。

  1. 创建应用程序。 使用先前设置的变量和项目标识来构造 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" \
      }'
    
  2. 要显示有关 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 .
    
  3. 要删除应用程序,请再次发送请求,但此时请使用 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"
    
  4. (可选) 如果您发送另一个 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 配合使用。