开发者社区 问答 正文

Swarm API参考  应用API列表  查看服务实例

[font=PingFangSC, "]根据服务实例 ID 查看详细信息。

请求信息


请求行 RequestLineGET /services/{service_id} HTTP/1.1
请求行参数 URI Param

[tr=rgb(51, 205, 229)][td]名称 类型是否必须描述service_idstring是服务实例 ID, 格式为 {project_name}_{service_name}
特有请求头 RequestHead

请求体 RequestBody


返回信息


返回行 ResponseLineHT TP/1.1 200 OK
特有返回头 ResponseHead

返回体 ResponseBody{ "id": "string", "name": "string", "project": "string", "description": "string", "created": "datetime", "updated": "datetime", "desired_state": "string", "current_state": "string", "definition": { "key": "value",...}, "extensions": { "key": "value",...}, "containers": { "key": "value",...}}
返回体解释
服务实例的格式
[tr=rgb(51, 205, 229)][td]名称 类型描述idstring服务 IDnamestring服务名称projectstring应用名称createddatetime服务创建时间updateddatetime服务更新时间desired_statestring期望状态 (如果当前状态是中间状态时,期望状态指明变迁终态)current_statestring当前状态definitionmapCompose 中服务定义 key/valueextensionsmap容器服务 Compose 中服务扩展 key/valuecontainersmap服务中所包含容器 key (容器 ID)/value(属性)

示例


请求示例GET /services/wordpress_db HTTP/1.1
返回示例
HTTP/1.1 200 Ok
Content-Type:application/json;charset=UTF-8
{
  "id": "wordpress_db",
  "name": "db",
  "project": "wordpress",
  "definition": {
    "environment": [
      "MYSQL_ROOT_PASSWORD=password"
    ],
    "image": "mysql:5.7",
    "restart": "always"
  },
  "extensions": {
    "scale": 1,
    "logs": [
      "/var/log/mysql"
    ]
  },
  "created": "2016-04-21T13:36:32.440646459Z",
  "updated": "2016-04-21T13:36:33.270308958Z",
  "desired_state": "running",
  "current_state": "running",
  "containers": {
    "5616f05d27516b3502a391fd2ca9d312cabffa5ad431bf261ea81f4ceabd476e": {
      "name": "/wordpress_db_1",
      "node": "10.246.2.3",
      "ip": "10.0.0.2",
      "running": true,
      "status": "running",
      "health": "success"
    }
  }
}


展开
收起
青蛙跳 2018-08-31 23:44:10 1882 分享 版权
阿里云 AI 助理回答

要根据服务实例 ID 查看详细信息,您可以按照以下结构化步骤操作:

  1. 构造请求

    • 方法: GET
    • 路径: /services/{service_id}
    • HTTP版本: HTTP/1.1
    • URI参数:
      • service_id: 必须提供,格式为{project_name}_{service_name},例如wordpress_db
  2. 发送请求: 直接使用上述构造的请求行向服务器发起请求。例如:

    GET /services/wordpress_db HTTP/1.1
    
  3. 接收响应: 服务器将返回服务实例的详细信息,响应示例如下(以JSON格式):

    {
       "id": "wordpress_db",
       "name": "db",
       "project": "wordpress",
       "description": "",
       "created": "2016-04-21T13:36:32.440646459Z",
       "updated": "2016-04-21T13:36:33.270308958Z",
       "desired_state": "running",
       "current_state": "running",
       "definition": {
           "environment": ["MYSQL_ROOT_PASSWORD=password"],
           "image": "mysql:5.7",
           "restart": "always"
       },
       "extensions": {
           "scale": 1,
           "logs": ["/var/log/mysql"]
       },
       "containers": {
           "5616f05d27516b3502a391fd2ca9d312cabffa5ad431bf261ea81f4ceabd476e": {
               "name": "/wordpress_db_1",
               "node": "10.246.2.3",
               "ip": "10.0.0.2",
               "running": true,
               "status": "running",
               "health": "success"
           }
       }
    }
    
  4. 解析响应内容

    • 服务ID (id): 标识服务实例的唯一字符串。
    • 服务名称 (name): 实例的具体名称。
    • 项目名称 (project): 服务所属的应用或项目名称。
    • 创建时间 (created): 服务实例被创建的时间戳。
    • 更新时间 (updated): 服务实例最近一次更新的时间戳。
    • 期望状态 (desired_state): 服务当前期望达到的状态,如running
    • 当前状态 (current_state): 服务当前实际所处的状态。
    • 定义 (definition): 包含服务配置详情,如环境变量、镜像和重启策略等。
    • 扩展 (extensions): 服务可能包含的额外配置或特性,如扩缩容设置和日志路径。
    • 容器 (containers): 服务中包含的容器信息,包括容器ID、名称、运行节点、IP地址及健康状况等。

通过以上步骤,您即可获取到指定服务实例的详细信息。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答