从Binaries安装 Docker Engine
重要
本页面包含有关如何使用Binaries安装 Docker 的信息。这些说明主要适用于测试目的。我们不推荐在生产环境中使用Binaries安装 Docker,因为它们没有自动安全更新。本页面描述的 Linux Binaries是静态链接的,这意味着构建时依赖项中的漏洞不会通过您的 Linux 发行版的安全更新自动修补。
与使用包管理器或通过 Docker Desktop 安装的 Docker 软件包相比,更新Binaries稍微复杂一些,因为每当 Docker 发布新版本时,都需要(手动)更新已安装的版本。
此外,静态Binaries可能不包含动态包提供的所有功能。
在 Windows 和 Mac 上,我们建议您安装 Docker Desktop 。对于 Linux,我们建议您遵循针对 您的发行版的具体说明。
如果您想尝试 Docker 或在测试环境中使用它,但您不在受支持的平台上,您可以尝试从静态Binaries安装。如果可能,您应该使用为您的操作系统构建的软件包,并使用您的操作系统的软件包管理系统来管理 Docker 的安装和升级。
Docker 守护进程Binaries的静态Binaries仅适用于 Linux(作为 dockerd)和 Windows(作为 dockerd.exe)。
Docker 客户端的静态Binaries适用于 Linux、Windows 和 macOS(作为 docker)。
本主题讨论在 Linux、Windows 和 macOS 上的二进制安装:
在 Linux 上安装守护进程和客户端Binaries
前提条件
在尝试从Binaries安装 Docker 之前,请确保您的主机满足先决条件:
- 64位安装
- Linux 内核版本 3.10 或更高版本。建议使用适用于您平台的最新内核版本。
iptables版本 1.4 或更高版本git版本 1.7 或更高版本- 一个
ps可执行文件,通常由procps或类似软件包提供。 - XZ 工具 4.9 或更高版本
- A
正确挂载
cgroupfs层级结构;一个单一的、包罗万象的cgroup挂载点是不够的。请参阅 GitHub 问题 #2683, #3485, #4568)。
尽可能确保您的环境安全
操作系统注意事项
如果可能,请启用 SELinux 或 AppArmor。
如果您的 Linux 发行版支持 AppArmor 或 SELinux 中的任意一个,建议使用其中之一。这有助于提高安全性并阻止某些类型的攻击。请查阅您的 Linux 发行版文档以获取启用和配置 AppArmor 或 SELinux 的说明。
安全警告
如果启用了任一安全机制,请不要禁用它作为使 Docker 或其容器运行的变通方法。相反,应正确配置它以解决任何问题。
Docker 守护进程注意事项
如果可能,请启用
seccomp安全配置文件。请参阅 为 Docker 启用seccomp。如果可能,请启用用户命名空间。请参阅 守护进程用户命名空间选项。
安装静态Binaries
下载静态二进制归档文件。前往 https://download.docker.com/linux/static/stable/, 选择您的硬件平台,并下载与您要安装的Docker Engine版本相关的
.tgz文件。使用
tar实用工具提取归档文件。提取了dockerd和dockerBinaries。$ tar xzvf /path/to/<FILE>.tar.gz可选:将Binaries移动到可执行路径上的目录,例如
/usr/bin/。如果跳过此步骤,则在调用docker或dockerd命令时必须提供可执行文件的路径。$ sudo cp docker/* /usr/bin/启动 Docker 守护进程:
$ sudo dockerd &如果需要使用其他选项启动守护进程,请相应地修改上述命令或创建并编辑文件
/etc/docker/daemon.json以添加自定义配置选项。通过运行
hello-world镜像来验证 Docker 是否已正确安装。$ sudo docker run hello-world此命令下载一个测试镜像并在容器中运行它。当容器运行时,它会打印一条消息并退出。
您已成功安装并启动 Docker Engine。
提示
在没有 root 权限的情况下尝试运行时遇到错误?
docker用户组存在但不包含任何用户,这就是为什么你需要使用sudo来运行 Docker 命令。继续前往 Linux 后安装步骤 以允许非特权用户运行 Docker 命令以及进行其他可选配置步骤。
在 macOS 上安装客户端Binaries
注意
以下说明主要适用于测试目的。macOS Binaries仅包含 Docker 客户端。它不包含运行容器所需的
dockerd守护进程。因此,我们建议您改为安装 Docker Desktop。
Mac 的Binaries也不包含:
- 运行环境。您必须在虚拟机或远程Linux机器上设置一个功能正常的引擎。
- Docker 组件,例如
buildx和docker compose。
要安装客户端Binaries,请执行以下步骤:
下载静态二进制存档。前往 https://download.docker.com/mac/static/stable/ 并选择
x86_64(适用于 Intel 芯片的 Mac)或aarch64(适用于 Apple silicon 的 Mac), 然后下载与您要安装的 Docker Engine 版本相关的.tgz文件。使用
tar工具解压归档文件。dockerBinaries已解压。$ tar xzvf /path/to/<FILE>.tar.gz清除扩展属性以允许其运行。
$ sudo xattr -rc docker现在,当您运行以下命令时,您可以看到 Docker CLI 使用说明:
$ docker/docker可选:将Binaries移动到可执行路径中的某个目录,例如
/usr/local/bin/。如果跳过此步骤,则在调用docker或dockerd命令时必须提供可执行文件的路径。$ sudo cp docker/docker /usr/local/bin/通过运行
hello-world镜像来验证 Docker 是否正确安装。<hostname>的值是运行 Docker 守护进程且客户端可访问的主机名或 IP 地址。$ sudo docker -H <hostname> run hello-world此命令下载一个测试镜像并在容器中运行它。当容器运行时,它会打印一条消息并退出。
在 Windows 上安装服务器和客户端Binaries
注意
以下部分介绍了如何在 Windows Server 上安装 Docker 守护进程,该进程仅允许您运行 Windows 容器。当您在 Windows Server 上安装 Docker 守护进程时,该守护进程不包含 Docker 组件,例如
buildx和compose。如果您运行的是 Windows 10 或 11,我们建议您改为安装 Docker Desktop。
Windows 上的二进制包包括 dockerd.exe 和 docker.exe。在 Windows 上,
这些Binaries仅提供运行本机 Windows 容器的能力(不
包括 Linux 容器)。
要安装服务器和客户端Binaries,请执行以下步骤:
下载静态二进制归档文件。前往 https://download.docker.com/win/static/stable/x86_64 并从列表中选择最新版本。
运行以下 PowerShell 命令以安装并将归档文件解压到您的程序文件中:
PS C:\> Expand-Archive /path/to/<FILE>.zip -DestinationPath $Env:ProgramFiles注册服务并启动 Docker 引擎:
PS C:\> &$Env:ProgramFiles\Docker\dockerd --register-service PS C:\> Start-Service docker通过运行
hello-world镜像来验证 Docker 是否已正确安装。PS C:\> &$Env:ProgramFiles\Docker\docker run hello-world:nanoserver此命令下载一个测试镜像并在容器中运行它。当容器运行时,它会打印一条消息并退出。
升级静态Binaries
要升级您的手动安装的 Docker Engine,首先停止本地运行的任何
dockerd 或 dockerd.exe 进程,然后按照常规安装步骤在现有版本之上安装新版本。
后续步骤
- 继续前往 Linux 的安装后步骤。