matthewbaggett 的包
-
-
-
PHP
matthewbaggett/docker-api-php-client
Docker Engine API 是由 Docker Engine 提供的 HTTP API。它是 Docker 客户端用于与 Engine 通信的 API,因此 Docker 客户端可以执行的所有操作都可以通过 API 执行。大多数客户端命令直接映射到 API 端点(例如,`docker ps` 映射到 `GET /containers/json`)。一个值得注意的例外是运行容器,它由多个 API 调用组成。 # 错误 API 使用标准的 HTTP 状态码来指示 API 调用的成功或失败。响应体将是以下格式的 JSON:``` { "message": "page not found" } ``` # 版本控制 API 通常在每个版本中更改,因此 API 调用被版本化以确保客户端不会损坏。要锁定到 API 的特定版本,请将版本前缀添加到 URL 之前,例如,调用 `/v1.30/info` 以使用 `/info` 端点的 v1.30 版本。如果 URL 中指定的 API 版本不受守护程序支持,则返回 HTTP `400 Bad Request` 错误消息。如果您省略版本前缀,则使用当前的 API 版本(v1.43)。例如,调用 `/info` 与调用 `/v1.43/info` 相同。在不使用版本前缀的情况下使用 API 已弃用,将在未来的版本中删除。不久将发布的 Engine 版本应支持此 API 版本,因此即使与较新的 Engine 通信,您的客户端也将继续工作。API 使用开放模式模型,这意味着服务器可能在响应中添加额外的属性。同样,服务器将忽略任何额外的查询参数和请求体属性。当您编写客户端时,您需要忽略响应中的额外属性,以确保它们在与较新的守护程序通信时不会损坏。 # 认证 仓库的认证由客户端处理。客户端必须向需要与仓库通信的各种端点发送认证详情,例如 `POST /images/(name)/push`。这些作为 `X-Registry-Auth` 标头发送,作为 [base64url 编码](https://tools.ietf.org/html/rfc4648#section-5)(JSON)字符串,其结构如下:``` { "username": "string", "password": "string", "email": "string", "serveraddress": "string" } ``` `serveraddress` 是没有协议的域名/IP。在此结构中,双引号是必需的。如果您已经从 `/auth` 端点(#operation/SystemAuth)获取了身份令牌,则只需传递此令牌而不是凭据:``` { "identitytoken": "9cbaf023786cd7..." } ```
-
-
-
-
-
-
-
-
-