Docker远程API JSON模式定义

我有一个程序,用docker dameon远程使用REST API进行通信。 它以json格式接收关于图像,容器,存储库的信息。 我想将这个REST API输出从JSON格式转换成C ++结构。

JSON格式总是采取键,值对的forms,其中键是string,但是值可以是string,数字,数组等。

我想知道是否有docker json对象的标准模式定义?

谢谢。

首先,有官方的远程API文档 。 但是,由于它包含“仅”示例请求并且没有权威的模式定义,因此可能不是您要查找的内容。

Docker远程API 似乎没有正式的JSON模式 。 但是,API响应是直接从相应的Go结构生成的,您可以在源代码库的单个文件中find这些结构

例如,考虑Container响应types的定义:

 // GET "/containers/json" type Port struct { IP string PrivatePort int PublicPort int Type string } type Container struct { ID string `json:"Id"` Names []string `json:",omitempty"` Image string `json:",omitempty"` Command string `json:",omitempty"` Created int `json:",omitempty"` Ports []Port `json:",omitempty"` SizeRw int `json:",omitempty"` SizeRootFs int `json:",omitempty"` Labels map[string]string `json:",omitempty"` Status string `json:",omitempty"` } 

这基本上包含了请求/containers/json URI时可能遇到的所有可能的键和它们的数据types。 所有其他资源表示也可以用相同的方式find。