透過二進位制檔案安裝 Docker Engine

重要提示

本頁包含有關如何使用二進位制檔案安裝 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 Utils 4.9 或更高版本
  • 一個正確掛載的 cgroupfs 層次結構;一個單一的、包羅永珍的 cgroup 掛載點是不夠的。請參閱 Github 問題 #2683#3485#4568

儘可能保護您的環境

作業系統注意事項

如果可能,請啟用 SELinux 或 AppArmor。

如果您的 Linux 發行版支援 AppArmor 或 SELinux 其中之一,建議使用它。這有助於提高安全性並阻止某些型別的漏洞利用。請查閱您的 Linux 發行版的文件,瞭解啟用和配置 AppArmor 或 SELinux 的說明。

安全警告

如果啟用了任一安全機制,請不要為了讓 Docker 或其容器執行而停用它。相反,應正確配置它以解決任何問題。

Docker 守護程序注意事項

安裝靜態二進位制檔案

  1. 下載靜態二進位制檔案存檔。轉到 https://download.docker.com/linux/static/stable/,選擇您的硬體平臺,並下載與您要安裝的 Docker Engine 版本相關的 .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
    

    此命令會下載一個測試映象並在容器中執行它。當容器執行時,它會列印一條訊息然後退出。

您現在已成功安裝並啟動了 Docker Engine。

提示

嘗試在沒有 root 許可權的情況下執行時收到錯誤?

docker 使用者組已存在但沒有使用者,這就是為什麼您需要使用 sudo 來執行 Docker 命令。繼續到 Linux 安裝後步驟,以允許非特權使用者執行 Docker 命令以及進行其他可選配置步驟。

在 macOS 上安裝客戶端二進位制檔案

注意

以下說明主要適用於測試目的。macOS 二進位制檔案僅包含 Docker 客戶端。它不包括執行容器所需的 dockerd 守護程序。因此,我們建議您改為安裝 Docker Desktop

Mac 的二進位制檔案也不包含

  • 一個執行時環境。您必須在虛擬機器中或遠端 Linux 機器上設定一個功能正常的引擎。
  • Docker 元件,例如 buildxdocker compose

要安裝客戶端二進位制檔案,請執行以下步驟

  1. 下載靜態二進位制存檔。前往 https://download.docker.com/mac/static/stable/ 並選擇 x86_64 (適用於 Intel 晶片的 Mac) 或 aarch64 (適用於 Apple 晶片的 Mac),然後下載與您要安裝的 Docker Engine 版本相關的 .tgz 檔案。

  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
    

    此命令會下載一個測試映象並在容器中執行它。當容器執行時,它會列印一條訊息然後退出。

在 Windows 上安裝伺服器和客戶端二進位制檔案

注意

以下部分描述瞭如何在 Windows Server 上安裝 Docker 守護程序,這隻允許您執行 Windows 容器。當您在 Windows Server 上安裝 Docker 守護程序時,該守護程序不包含 Docker 元件,如 buildxcompose。如果您執行的是 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 Engine

    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

    此命令會下載一個測試映象並在容器中執行它。當容器執行時,它會列印一條訊息然後退出。

升級靜態二進位制檔案

要升級手動安裝的 Docker Engine,請先停止本地執行的任何 dockerddockerd.exe 程序,然後按照常規安裝步驟將新版本安裝在現有版本之上。

後續步驟