1

我正在 Docker Enterprise 3.2 环境中编写 devops 管道。

我能够从 UCP API中获取所有内容。 stacks现在我需要获取单个stacks但文档似乎完全省略了这个资源。

有没有什么:

ucp_url/api/stacks/my_awesome_stack_name

或者

ucp_url/api/stacks?name=my_awesome_stack_name

?

4

1 回答 1

0

简短的回答

该字段namespace是堆栈的标识符。调用api/stacks/my_namespace将获得所需的堆栈。

我是怎么找到这个的

在修改了文档和 api 之后,我意识到stacks资源只是另一个可以使用其标识符选择的集合。

当您调用时,api/stacks您将收到如下所示的堆栈集合:

[
  {
    "namespace": "my_awesome_namespace_1",
    "services": []
    ...
    "namespace": "my_awesome_namespace_2",
    "services": []
    ...
  }
]

我只是尝试api/stacks/my_awesome_namespace_1并以 json 格式接收了所需的对象。

超越

我相信这个答案最重要的是这种方法可以推广到任何 UCP 资源。

  1. 获取给定资源类型的所有资源
  2. 尝试确定哪个字段是标识符
  3. 试着打电话my_awesome_resource/my_awesome_resource_identifier
  4. 开心点 :)
于 2020-03-12T09:53:21.357 回答