从二进制文件安装Docker引擎
重要
本页面包含如何使用二进制文件安装Docker的信息。这些说明主要适用于测试目的。我们不建议在生产环境中使用二进制文件安装Docker,因为它们没有自动安全更新。本页面描述的Linux二进制文件是静态链接的,这意味着构建时依赖项中的漏洞不会通过Linux发行版的安全更新自动修补。
与使用包管理器或通过Docker Desktop安装的Docker包相比,更新二进制文件也稍微复杂一些,因为每当有新版本的Docker发布时,都需要(手动)更新已安装的版本。
此外,静态二进制文件可能不包含动态包提供的所有功能。
在Windows和Mac上,我们建议您安装 Docker Desktop 。对于Linux,我们建议您遵循特定于您的发行版的说明。
如果你想尝试Docker或在测试环境中使用它,但你的平台不受支持,你可以尝试从静态二进制文件安装。如果可能的话,你应该使用为你的操作系统构建的包,并使用你的操作系统的包管理系统来管理Docker的安装和升级。
Docker守护进程的静态二进制文件仅适用于Linux(作为dockerd)和Windows(作为dockerd.exe)。
Docker客户端的静态二进制文件适用于Linux、Windows和macOS(作为docker)。
本主题讨论Linux、Windows和macOS的二进制安装:
在Linux上安装守护进程和客户端二进制文件
先决条件
在尝试从二进制文件安装 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。如果可能,启用用户命名空间。请参阅 守护进程用户命名空间选项。
安装静态二进制文件
下载静态二进制归档文件。前往 https://download.docker.com/linux/static/stable/, 选择您的硬件平台,并下载与您要安装的Docker Engine版本相关的
.tgz文件。使用
tar工具解压存档。提取了dockerd和docker二进制文件。$ tar xzvf /path/to/<FILE>.tar.gz可选:将二进制文件移动到您的可执行路径下的目录中,例如
/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上安装客户端二进制文件
注意
以下说明主要适用于测试目的。macOS 二进制文件仅包含 Docker 客户端。它不包含运行容器所需的
dockerd守护进程。因此,我们建议您安装 Docker Desktop 来代替。
Mac的二进制文件也不包含:
- 运行时环境。您必须在虚拟机或远程Linux机器上设置一个功能引擎。
- Docker组件,如
buildx和docker compose。
要安装客户端二进制文件,请执行以下步骤:
下载静态二进制归档文件。前往 https://download.docker.com/mac/static/stable/ 并选择
x86_64(适用于Intel芯片的Mac)或aarch64(适用于Apple芯片的Mac), 然后下载与您要安装的Docker Engine版本相关的.tgz文件。使用
tar工具解压存档。docker二进制文件被提取出来。$ tar xzvf /path/to/<FILE>.tar.gz清除扩展属性以允许其运行。
$ sudo xattr -rc docker现在,当你运行以下命令时,你可以看到Docker CLI的使用说明:
$ docker/docker可选:将二进制文件移动到您的可执行路径中的一个目录,例如
/usr/local/bin/。如果您跳过此步骤,则在调用docker或dockerd命令时必须提供可执行文件的路径。$ sudo cp docker/docker /usr/local/bin/通过运行
hello-world镜像来验证Docker是否正确安装。的值是运行Docker守护程序并可被客户端访问的主机名或IP地址。$ sudo docker -H <hostname> run hello-world此命令下载一个测试镜像并在容器中运行它。当容器运行时,它会打印一条消息并退出。
在Windows上安装服务器和客户端二进制文件
注意
以下部分描述了如何在Windows Server上安装Docker守护程序,该守护程序仅允许您运行Windows容器。当您在Windows Server上安装Docker守护程序时,该守护程序不包含诸如
buildx和compose等Docker组件。如果您运行的是Windows 10或11,我们建议您安装Docker Desktop。
Windows上的二进制包包括dockerd.exe和docker.exe。在Windows上,这些二进制文件仅提供运行原生Windows容器的能力(不提供运行Linux容器的能力)。
要安装服务器和客户端二进制文件,请执行以下步骤:
下载静态二进制归档文件。前往 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此命令下载一个测试镜像并在容器中运行它。当容器运行时,它会打印一条消息并退出。
升级静态二进制文件
要升级您手动安装的Docker Engine,首先停止本地运行的任何dockerd或dockerd.exe进程,然后按照常规安装步骤在现有版本的基础上安装新版本。
下一步
- 继续 Linux 安装后步骤.