开发者社区 问答 正文

Swarm API参考  应用API列表  更新应用配置

[font=PingFangSC, "]更新一个应用实例的配置信息。

请求信息


请求行 RequestLinePOST /projects/{name}/update HTTP/1.1
请求行参数 URI Param

[tr=rgb(51, 205, 229)][td]名称 类型是否必须描述namestring是应用实例名称
特有请求头 RequestHeadContent-Type: application/json
请求体 RequestBody
JSON object
{
    "description": "string",
    "template": "string",
    "version": "string",
    "latest_image": true,
    "environment": {
       "key": "value",
       ...
    }
}


请求体解析
[tr=rgb(51, 205, 229)][td]名称 类型必须描述descriptionstring否更新的应用描述。templatestring是更新的 Compose yaml 模板,注意需要按照 JSON 格式进行转义。versionstring否更新的应用版本,更新的版本应和原有版本不同,否则会返回 HTTP code 409。latest_imagebool否是否拉取最新镜像environmentmap环境变量key/value 用于替换 Compose 模板的环境变量

返回信息


返回行 ResponseLineH TTP/1.1 202 Accepted
特有返回头 ResponseHead

返回体 ResponseBody


示例


请求示例
POST /projects/test/update HTTP/1.1
Content-Type: application/json
{
  "description": "This is a test application",
  "template": "web:\r\n  image: nginx",
  "version": "2.0",
  "latest_image": true,
  "environment": {
    "USER": "abc",
    "PWD": "newpwd"
  }
}


返回示例
HTTP/1.1 202 Accepted

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

要更新一个应用实例的配置信息,您需要按照以下步骤操作:

  1. 构建请求

    • HTTP方法:使用POST方法。
    • 请求URL:构造请求URL,格式为/projects/{name}/update,其中{name}需要替换为您的应用实例名称。
    • Content-Type:在请求头中设置Content-Type: application/json,表明发送的是JSON格式的数据。
  2. 准备请求体内容

    • description(可选):提供一个字符串描述更新的应用描述。
    • template(必需):提供更新的Compose YAML模板内容,注意需符合JSON格式要求,可能涉及特定字符的转义。
    • version(可选):指定更新的应用版本号,确保与原版本不同以避免冲突(HTTP 409错误)。
    • latest_image(可选):布尔值,指示是否拉取最新镜像。
    • environment(可选):一个键值对对象,用于替换Compose模板中的环境变量。

示例请求体如下:

{
    "description": "这是更新后的测试应用描述",
    "template": "web:\n  image: nginx:latest", // 注意YAML转义为JSON格式
    "version": "3.0",
    "latest_image": true,
    "environment": {
        "DB_HOST": "new-db-host",
        "DB_PORT": "5432"
    }
}
  1. 发送请求

    • 使用上述构造的请求行、请求头和请求体向服务器发送POST请求。
  2. 处理响应

    • 成功的响应将返回HTTP/1.1 202 Accepted,表示请求已被接受并将在后台处理。此接口不返回具体的响应体内容。

注意事项: - 确保version字段值是唯一的,以防止与现有版本冲突。 - 在提供template参数时,正确转义YAML特殊字符,使其适应JSON格式。 - 更新前验证环境变量environment中的键值对是否适用于您的应用配置,避免因变量替换导致的配置错误。

通过以上步骤,您可以完成应用实例配置信息的更新任务。

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