如何在 Ubuntu、CentOS、Debian 和 Windows 上安装 Docker

在您最喜欢的操作系统上安装 Docker 的分步指南。

Docker 是一个开源项目,支持在自给自足的可移植容器中构建、测试、部署和管理应用程序。 通常,容器映像具有应用程序运行所需的所有资源。

如今,Docker 已成为一种流行的工具,用于将应用程序作为容器进行部署和管理,同时克服兼容性问题。 该技术允许您在各种计算机上安装应用程序和服务,而不管底层硬件和操作系统如何。 因此,只要安装了 Docker,您就可以在不同的计算机系统上运行此类映像。 典型的镜像包括 Nginx、MariaDB、WordPress 等。

Docker 不同于传统的 VM。

在本教程中,您将学习如何在以下操作系统上安装 Docker。

  • Ubuntu
  • Debian
  • 中央操作系统
  • 视窗

在大多数情况下,特定操作系统的步骤相似,但不同版本之间可能存在一些细微差异。

Docker安装方法

一般Docker安装方式主要有3种,根据情况和环境选择哪一种,如下所述。

  • 使用 Docker 存储库: – 推荐用于大多数在线安装的易于安装和升级的方法。
  • 手动下载、安装、升级: – 适用于无法上网的离线电脑
  • 使用自动化脚本:用于开发和测试环境。

在本指南中,我们将讨论使用 Docker 存储库进行安装。 您将学习如何从官方 Docker 存储库安装和升级该工具。 通常,您也可以从操作系统的存储库中下载文件,但这可能没有最新版本,因此需要尽可能使用官方 Docker 源。

在 Ubuntu 上安装 Docker

对于本文,我们将使用 Ubuntu 18.04。

先决条件

第一步:更新本地数据库

在安装之前,首先更新现有的包列表

sudo apt update

第 2 步:安装支持 https 的依赖项

安装允许 apt 通过 https 传输文件的软件包

sudo apt install apt-transport-https ca-certificates curl software-properties-common

这就是每个命令的作用;

  • apt-transport-https:允许 apt 通过 https 传输文件和数据
  • ca-certificates:使计算机或浏览器检查安全证书
  • curl:文件传输工具
  • software-properties-common:添加软件管理脚本

第三步:添加 Docker 的 GPG 密钥

接下来是添加 GPG 密钥——一种确保安装文件真实的安全功能。

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add –

第 4 步:安装 Docker 存储库

在此步骤中,使用以下命令将 Docker 存储库添加到 apt 源。

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"

第 5 步:更新存储库

使用刚刚添加的 repo 中的 Docker 包更新数据库

sudo apt update

要确保您从官方 Docker 存储库运行安装,请运行命令

apt-cache policy docker-ce

这应该给出以下输出

  如何在 Windows 11 上启用安全启动

apt-cache 策略 docker-ce 的输出

docker-ce:
  Installed: (none)
  Candidate: 5:19.03.5~3-0~ubuntu-bionic
  Version table:
 5:19.03.5~3-0~ubuntu-bionic 500
500 https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
 5:19.03.4~3-0~ubuntu-bionic 500
500 https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
 5:19.03.3~3-0~ubuntu-bionic 500

从输出中,您会注意到 docker-ce 尚未安装。 但是,输出将显示目标操作系统和 Docker 的版本号。 请注意,版本号可能因安装时间而异。

第 6 步:安装最新版本的 Docker

确认后,使用以下命令安装 Docker。

sudo apt install docker-ce

这将安装 Docker,启动守护进程并使其在启动时自动启动。 要确认 Docker 处于活动状态且正在工作,请运行;

sudo systemctl status docker

如果安装并运行成功,该命令将提供以下输出

    $ sudo systemctl status docker

● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: e
   Active: active (running) since Sat 2019-12-14 07:46:40 UTC; 50s ago
 Docs: https://docs.docker.com
 Main PID: 2071 (dockerd)
Tasks: 8
   CGroup: /system.slice/docker.service
   └─2071 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/contain

这部分输出显示安装成功并且 Docker 处于活动状态并正在运行。

在 CentOS 上安装 Docker

先决条件

  • CentOS 7 的稳定版本
  • 须藤用户

最佳实践是使用官方 Docker 存储库中最新版本的 Docker 安装包。

步骤 1:更新包数据库

第一步是使用命令更新包数据库。

sudo yum update

第 2 步:添加 Docker 存储库并安装 Docker

更新后,我们将添加官方Docker仓库,下载并安装最新版本的Docker。 为此,请使用命令;

curl -fsSL https://get.docker.com/ | sh

第 3 步:启动 Docker 并检查其版本

安装完成后,启动 Docker 守护进程

sudo systemctl start docker

确认 Docker 正在运行

sudo systemctl status docker

这应该提供以下输出

docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2019-12-09 09:54:50 UTC; 7s ago
 Docs: https://docs.docker.com
 Main PID: 9194 (dockerd)
Tasks: 8
   Memory: 44.0M
   CGroup: /system.slice/docker.service
   └─9194 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/cont...

在 Debian 上安装 Docker

为确保您获得最新版本,请从官方 Docker 存储库安装。

先决条件

  • Debian 9 运行
  • 须藤用户
  • 第一步:更新系统

    首先,更新已安装软件包的列表。

    sudo apt update

    第 2 步:安装通过 Https 运行 apt 所需的包

    sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common

    第 3 步:添加 GPG 密钥

    现在我们需要将 GPG 密钥从 Docker 添加到我们的 Debian 系统。 这可确保下载有效。

    要为官方 Docker 存储库添加 GPG 密钥,请运行

    curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

    第 4 步:将 Docker 存储库添加到 APT 源

    在此步骤中,您将 Docker 存储库添加到 apt 源。

    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

    步骤 5:更新包数据库

    我们现在将使用您刚刚添加的 repo 中的 Docker 包更新包数据库。

    sudo apt update

    第六步:验证安装源

    以下命令可确保您从官方 Docker 存储库安装 Docker,而不是从可能已过时的 Debian 安装。

    apt-cache policy docker-ce

    这将返回类似于下面的输出。 但是,Docker 的版本号可能会有所不同。

      Installed: (none)
      Candidate: 5:19.03.5~3-0~debian-stretch
      Version table:
     5:19.03.5~3-0~debian-stretch 500
    500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
     5:19.03.4~3-0~debian-stretch 500
    500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
     5:19.03.3~3-0~debian-stretch 500
    500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
     5:19.03.2~3-0~debian-stretch 500
    500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
    ..
    ..
    ..
    17.03.1~ce-0~debian-stretch 500
    500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
     17.03.0~ce-0~debian-stretch 500
    500 https://download.docker.com/linux/debian stretch/stable amd64 Packages

    可以看出,docker-ce 还没有安装。 输出显示安装来自 Debian 9 (stretch) 的官方 Docker 存储库。

      适用于 Windows 10 的最佳驱动程序更新软件(评论 2022)

    第 7 步:安装 Docker

    我们现在准备使用以下命令安装 Docker。

    sudo apt install docker-ce

    这将安装 Docker,启动引擎并将其配置为始终在启动时启动。 安装完成后,验证它是否正在运行。

    sudo systemctl status docker

    如果安装成功,输出将指示服务处于活动状态并正在运行。

    输出

    ● docker.service - Docker Application Container Engine
       Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: e
       Active: active (running) since Mon 2019-12-09 11:48:32 UTC; 41s ago
     Docs: https://docs.docker.com
     Main PID: 17486 (dockerd)
       CGroup: /system.slice/docker.service
       └─17486 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/contain

    在 Windows 上安装 Docker

    让我们看看如何在 Windows server 2016 上安装 Docker 企业版。

    第 1 步:安装 Docker Powershell 模块

    使用管理帐户打开 Window 的 PowerShell 命令提示符,然后使用以下命令安装 DockerMsftProvider 模块。 这是一个 Docker Powershell 模块,用于查找、安装和更新 Docker 镜像。

    如果使用管理员帐户,该命令将显示为;

    PS C:UsersAdministrator> install-module -name DockerMsftProvider -Force

    这将给出如下输出。

    NuGet provider is required to continue
    PowerShellGet requires NuGet provider version ‘2.8.5.201’ or newer to interact with NuGet-based repositories. The NuGet
    provider must be available in ‘C:Program FilesPackageManagementProviderAssemblies’ or
    ‘C:UsersAdministratorAppDataLocalPackageManagementProviderAssemblies’. You can also install the NuGet provider by
    running ‘Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force’. Do you want PowerShellGet to install
    and import the NuGet provider now?
    [Y] Yes [N] No [S] Suspend [?] Help (default is “Y”): y
    Type Y for Yes

    步骤 2 安装 Docker 包

    模块到位后,我们现在准备安装 Docker 包。

    PS C:UsersAdministrator>Install-Package Docker –Providername DockerMsftProvider –Force

    这将在计算机上安装 Docker 包,但不会启动服务。 因此,您必须重新启动计算机才能启用容器功能。

    PS C:UsersAdministrator>Restart-Computer

    重启后,通过运行验证安装和版本

    PS C:UsersAdministrator>docker-version

    输出

    Client: Docker Engine – Enterprise
    Version: 19.03.5
    API version: 1.40
    Go version: go1.12.12
    Git commit: 2ee0c57608
    Built: 11/13/2019 08:00:16
    OS/Arch: windows/amd64
    Experimental: false
    Server: Docker Engine – Enterprise
    Engine:
    Version: 19.03.5
    API version: 1.40 (minimum version 1.24)
    Go version: go1.12.12
    Git commit: 2ee0c57608
    Built: 11/13/2019 07:58:51
    OS/Arch: windows/amd64
    Experimental: false
    
    PS C:UsersAdministrator>

    要使用典型映像测试 Docker,请运行命令

    docker run hello-world:nanoserver-sac2016

    如果安装并正常运行,该命令将给出以下输出。

    PS C:UsersAdministrator> docker run hello-world:nanoserver-sac2016
    
    Hello from Docker!
    This message shows that your installation appears to be working correctly.
    To generate this message, Docker took the following steps:
    1. The Docker client contacted the Docker daemon.
    2. The Docker daemon pulled the “hello-world” image from the Docker Hub.
    (windows-amd64, nanoserver-sac2016)
    3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
    4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.
    To try something more ambitious, you can run a Windows Server container with:
    PS C:> docker run -it mcr.microsoft.com/windows/servercore powershell
    Share images, automate workflows, and more with a free Docker ID:
    https://hub.docker.com/
    For more examples and ideas, visit:
    https://docs.docker.com/get-started/

    请注意,您必须默认使用 Windows 容器映像。 如果您需要运行 Linux 容器镜像,请在实验模式下使用 Docker Daemon,该模式在桌面版本中可用。

      修复 Windows 10 中的 Steam 错误代码 51

    结论

    我希望你现在知道安装 Docker 是多么容易。 安装后,尝试一下以熟悉它,如果您需要一些基于视频的培训,请查看此 课程.