ubuntu安装docker

官方安装

1. 设置 Docker 存储库

  在新主机上首次安装 Docker Engine 之前,需要设置 Docker 存储库。因为 Docker 官方提供的软件包可能不在默认的软件源中。通过配置 Docker 存储库,可以从官方源快速安装和更新 Docker,这样就能够确保你运行的是官方提供的最新版本的 Docker Engine,从而使得 Docker 的安装和升级过程更加简单和高效。

  tips:因为使用root用户权限,所有命令的sudo都需删除

  1.1 更新apt软件缓存

    apt-get update

  1.2 安装SSL/TLS 证书支持、网络传输工具以及数据加密和签名功能

    apt-get install ca-certificates curl gnupg

      ca-certificates:这个软件包包含了一些根证书和中间证书,用于验证网络连接中的 SSL/TLS 证书。在许多情况下,安装这些证书是很有必要的,因为它们可以帮助保护网络通信的安全性。

      curl:这个软件包提供了一个功能强大且灵活的命令行工具和库,用于与网络服务器进行数据传输。它支持各种协议,如 HTTP、HTTPS、FTP 等,可以用来下载文件、上传文件以及执行各种网络操作。

      gnupg:这是 GNU Privacy Guard(GnuPG)的简称,是一个用于数据加密和签名的自由软件。它可以用来创建和管理密钥对、加密和解密文件,以及验证数字签名。

  1.3 添加docker官方GPG key

    install -m 0755 -d /etc/apt/keyrings

      install 是一个 Linux 命令,用于安装文件或目录。它有许多选项来控制安装的方式。

      -m 0755 设置了所安装目录的权限。0755 权限意味着所有者有读、写和执行的权限,而组用户和其他用户有读和执行的权限,这通常是典型的目录权限设置。

      -d 选项告诉 install 命令创建一个目录。

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

      curl 是一个用于在命令行中传输数据的工具。在这里,它被用来从指定的 URL 下载数据

      -fsSL 是 curl 命令的一些选项。-f 选项告诉 curl 在下载过程中遇到错误时继续下载。-s 选项表示静默模式,不显示进度和错误信息。-S 选项告诉 curl 在发生错误时显示错误信息。-L 选项用于跟踪 HTTP 重定向。

      gpg 是一个 GPG(GNU Privacy Guard)命令,用于将输入的 ASCII GPG 密钥解密为二进制格式,并将结果保存到指定的文件中。--dearmor 选项用于将 ASCII 编码的密钥解码为二进制格式。 -o 选项指定输出的文件路径。

    chmod a+r /etc/apt/keyrings/docker.gpg

      chmod 是一个用于修改文件权限的命令。

      a+r 指示为所有用户添加读权限。字母 'a' 表示所有用户,'+' 表示添加权限,'r' 表示读取权限。

    echo \ "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

      该命令将 Docker 存储库的信息追加到 /etc/apt/sources.list.d/docker.list 文件中,以便在 Ubuntu 系统中进行软件包管理和安装。

      echo 命令用于打印文本内容。

      deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] 是要添加的存储库的一部分,它指定了存储库的体系结构和签名方式。

      https://download.docker.com/linux/ubuntu 是 Docker 存储库的 URL。

      $(. /etc/os-release && echo "$VERSION_CODENAME")/etc/os-release 文件中提取版本代号并将其添加到存储库 URL 中。

      stable 表示要添加的 Docker 存储库的稳定版本。

      sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 将输出重定向到 /etc/apt/sources.list.d/docker.list 文件,并使用 sudo 提升权限。

2. 安装docker软件包

  2.1 安装最新版本

    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

  2.2 安装指定版本

    apt-cache madison docker-ce | awk '{ print $3 }'

      列出存储库中的可用版本

    VERSION_STRING=5:24.0.0-1~ubuntu.22.04~jammy

    sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

      设置指定版本并安装

3. 验证安装成功

  sudo docker run hello-world

Tips:建议换国内镜像源 

  vim /etc/docker/daemon.json

    在许多类 Unix 操作系统中,包括 Linux 系统,/etc 文件夹被用作存储系统范围的配置信息的标准位置。
  {
    "registry-mirrors": ["https://c3uxt25x.mirror.aliyuncs.com"]
  }

  sudo systemctl daemon-reload

    这个命令会重新加载 systemd 守护进程,并重新读取配置文件中的更改,以便使最新的配置生效。

    重新加载配置不会重新启动或停止任何服务,它只会重新加载 systemd 的配置文件。
  sudo systemctl restart docker

    重新启动Docker 服务
  sudo systemctl enable docker

    用于在系统引导时自动启用 Docker 服务。当你运行这个命令时,它会创建一个符号链接或配置文件,将 Docker 服务添加到系统引导过程中,这样系统在启动时会自动启动 Docker 服务。

    

 

posted @ 2023-10-23 15:37  花都八达鸟  阅读(743)  评论(0)    收藏  举报