Share feedback
Answers are generated based on the documentation.

Docker Engine API

Docker 提供了一个用于与 Docker 守护进程(称为 Docker Engine API)交互的 API,以及 Go 和 Python 的 SDK。这些 SDK 可让您高效地构建和扩展 Docker 应用程序和解决方案。如果您不使用 Go 或 Python,也可以直接使用 Docker Engine API。

有关 Docker Engine SDK 的信息,请参阅使用 Docker Engine SDK 进行开发

Docker Engine API 是一个 RESTful API,可通过 wgetcurl 等 HTTP 客户端,或大多数现代编程语言内置的 HTTP 库进行访问。

查看 API 参考文档

您可以 查看最新版本的 API 参考文档,或 选择特定版本

版本化 API 和 SDK

您应使用的 Docker Engine API 版本取决于 Docker 守护进程和 Docker 客户端的版本。

特定版本的 Docker Engine SDK 支持特定版本的 Docker Engine API 以及所有早期版本。如果发生破坏性变更,这些变更会被显著记录。

Note

Docker 守护进程和客户端不必始终保持相同版本。但请注意以下几点:

  • 如果守护进程版本比客户端新,客户端将无法了解守护进程中的新功能或已弃用的 API 端点。

  • 如果客户端版本比守护进程新,客户端可能会请求守护进程未知的 API 端点。

当添加新功能时,会发布新版本的 API。Docker API 向后兼容,因此除非您需要使用新功能,否则无需更新使用 API 的代码。

要查看 Docker 守护进程和客户端支持的最高 API 版本,请使用 docker version 命令:

$ docker version
Client: Docker Engine - Community
 Version:           29.2.0-rc.2
 API version:       1.53
 Go version:        go1.25.6
 Git commit:        d5ed037
 Built:             Mon Jan 19 12:05:12 2026
 OS/Arch:           linux/arm64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          29.2.0-rc.2
  API version:      1.53 (minimum version 1.44)
  Go version:       go1.25.6
  Git commit:       f164e50
  Built:            Mon Jan 19 12:05:12 2026
  OS/Arch:          linux/arm64
  ...

您可以通过以下任意方式指定要使用的 API 版本:

  • 使用 SDK 时,请使用最新版本。至少应使用包含您所需功能对应 API 版本的版本。

  • 直接使用 curl 时,请在 URL 的第一部分指定版本。例如,如果端点是 /containers/,可以使用 /v1.53/containers/

  • 要强制 Docker CLI 或 Docker Engine SDK 使用比 docker version 报告的更旧的 API 版本,请将环境变量 DOCKER_API_VERSION 设置为正确的版本。此方法适用于 Linux、Windows 或 macOS 客户端。

    $ DOCKER_API_VERSION=1.52
    

    在设置此环境变量期间,即使 Docker 守护进程支持更新的版本,也会使用该版本的 API。此环境变量会禁用 API 版本协商,因此仅在必须使用特定 API 版本或用于调试目的时才应使用。

  • Docker Go SDK 允许您启用 API 版本协商,自动选择客户端和正在使用的 Docker Engine 均支持的 API 版本。

  • 对于 SDK,您还可以在程序中通过将 API 版本作为 client 对象的参数来指定。请参阅 Go 构造函数Python SDK 的 client 文档

API 版本矩阵

Docker 版本 最大 API 版本 变更日志
29.0 1.52 变更内容
28.3 1.51 变更内容
28.2 1.50 变更内容
28.1 1.49 变更内容
28.0 1.48 变更内容
27.5 1.47 变更内容
27.4 1.47 变更内容
27.3 1.47 变更内容
27.2 1.47 变更内容
27.1 1.46 变更内容
27.0 1.46 变更内容
26.1 1.45 变更内容
26.0 1.45 变更内容
25.0 1.44 变更内容
24.0 1.43 变更内容
23.0 1.42 变更内容
20.10 1.41 变更内容
19.03 1.40 变更内容
18.09 1.39 变更内容
18.06 1.38 变更内容
18.05 1.37 变更内容
18.04 1.37 变更内容
18.03 1.37 变更内容
18.02 1.36 变更内容
17.12 1.35 变更内容
17.11 1.34 变更内容
17.10 1.33 变更内容
17.09 1.32 变更内容
17.07 1.31 变更内容
17.06 1.30 变更内容
17.05 1.29 变更内容
17.04 1.28 变更内容
17.03.1 1.27 变更内容
17.03 1.26 变更内容
1.13.1 1.26 变更内容
1.13 1.25 变更内容
1.12 1.24 变更内容

已弃用的 API 版本

v1.44 之前的 API 版本已被弃用。您可以在 GitHub 代码仓库中找到已弃用 API 版本的归档文档: