Install Docker Engine from binaries

预计阅读时间:7分钟

Important

此页面包含有关如何使用二进制文件安装 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 的二进制安装:

Install daemon and client binaries on Linux

Prerequisites

在尝试从二进制文件安装 Docker 之前,请确保您的主机满足先决条件:

  • 64位安装
  • 版本 3.10 或更高版本的 Linux 内核. 建议使用适用于您的平台的最新版本的内核.
  • iptables 1.4 或更高版本
  • git版本 1.7 或更高版本
  • ps可执行文件,通常由procps或类似包提供.
  • XZ Utils 4.9 或更高版本
  • 正确安装cgroupfs层次结构; 一个包罗万象的cgroup挂载点是不够的. 请参阅 Github 问题#2683#3485#4568 ).

Secure your environment as much as possible

OS considerations

如果可能,启用 SELinux 或 AppArmor.

如果您的 Linux 发行版支持两者之一,建议使用 AppArmor 或 SELinux. 这有助于提高安全性并阻止某些类型的漏洞利用. 查看 Linux 发行版的文档以获取有关启用和配置 AppArmor 或 SELinux 的说明.

安全警告

如果启用了任一安全机制,请勿将其禁用以作为使 Docker 或其容器运行的变通方法. 相反,正确配置它以解决任何问题.

Docker daemon considerations

Install static binaries

  1. 下载静态二进制存档. 转到https://download.docker.com/linux/static/stable/ ,选择您的硬件平台,然后下载与您要安装的 Docker 引擎版本相关的.tgz文件.

  2. 使用tar实用程序提取存档. 提取dockerddocker二进制文件.

    $ tar xzvf /path/to/<FILE>.tar.gz
    
  3. 可选:将二进制文件移动到可执行路径上的目录,例如/usr/bin/ . 如果跳过此步骤,则必须在调用dockerdockerd命令时提供可执行文件的路径.

    $ sudo cp docker/* /usr/bin/
    
  4. 启动 Docker 守护进程:

    $ sudo dockerd &
    

    如果您需要使用其他选项启动守护程序,请相应地修改上述命令或创建和编辑文件/etc/docker/daemon.json以添加自定义配置选项.

  5. 通过运行hello-world映像来验证 Docker 是否已正确安装.

    $ sudo docker run hello-world
    

    此命令下载测试映像并在容器中运行它. 当容器运行时,它会打印一条消息并退出.

Install client binaries on macOS

Note

以下说明主要适用于测试目的. macOS 二进制文件仅包含 Docker 客户端. 它不包括运行容器所需的dockerd守护进程. 因此,我们建议您安装Docker Desktop .

Mac 的二进制文件也不包含:

  • 运行时环境. 您必须在虚拟机或远程 Linux 机器上设置功能引擎.
  • Docker 组件,例如buildx 、 docker docker scan和 docker docker compose .

要安装客户端二进制文件,请执行以下步骤:

  1. 下载静态二进制存档. 转到https://download.docker.com/mac/static/stable/并选择x86_64 (适用于 Intel 芯片上的 Mac)或aarch64 (适用于 Apple 芯片上的 Mac),然后下载与版本相关的.tgz文件您要安装的 Docker 引擎.

  2. 使用tar实用程序提取存档. 提取docker二进制文件.

    $ tar xzvf /path/to/<FILE>.tar.gz
    
  3. 清除扩展属性以允许它运行.

    $ sudo xattr -rc docker
    

    现在,当您运行以下命令时,您可以看到 Docker CLI 使用说明:

    $ docker/docker
    
  4. 可选:将二进制文件移动到可执行路径上的目录,例如/usr/local/bin/ . 如果跳过此步骤,则必须在调用dockerdockerd命令时提供可执行文件的路径.

    $ sudo cp docker/docker /usr/local/bin/
    
  5. 通过运行hello-world映像来验证 Docker 是否已正确安装. <hostname>的值是运行 Docker 守护程序且可供客户端访问的主机名或 IP 地址.

    $ sudo docker -H <hostname> run hello-world
    

    此命令下载测试映像并在容器中运行它. 当容器运行时,它会打印一条消息并退出.

Install server and client binaries on Windows

Note

以下部分描述了如何在 Windows Server 上安装 Docker 守护程序,它只允许您运行 Windows 容器. Windows 的二进制文件不包含 Docker 组件,例如buildx 、 docker docker scan和 docker docker compose . 如果您运行的是 Windows 10 或 11,我们建议您安装Docker Desktop .

Windows 上的二进制包包括dockerd.exedocker.exe . 在 Windows 上,这些二进制文件仅提供运行本机 Windows 容器(而非 Linux 容器)的能力.

要安装服务器和客户端二进制文件,请执行以下步骤:

  1. 下载静态二进制存档. 转到https://download.docker.com/win/static/stable/x86_64并从列表中选择最新版本.

  2. 运行以下 PowerShell 命令以安装存档并将其解压缩到您的程序文件中:

     PS C:\> Expand-Archive /path/to/<FILE>.zip -DestinationPath $Env:ProgramFiles
    
  3. 注册服务并启动 Docker 引擎:

     PS C:\> &$Env:ProgramFiles\Docker\dockerd --register-service
     PS C:\> Start-Service docker
    
  4. 通过运行hello-world映像来验证 Docker 是否已正确安装.

    PS C:\> &$Env:ProgramFiles\Docker\docker run hello-world:nanoserver
    

    此命令下载测试映像并在容器中运行它. 当容器运行时,它会打印一条消息并退出.

Upgrade static binaries

要升级手动安装的 Docker 引擎,首先停止本地运行的任何dockerddockerd.exe进程,然后按照常规安装步骤在现有版本之上安装新版本.

Next steps

binaries, installation, docker, documentation, linux

by  icopy.site