如何在 Ubuntu 上安装 Docker
创始人
2024-03-02 18:18:39
0

了解在 Ubuntu 上安装 Docker 的两种官方方法。一种很简单,但可能会给你一个稍旧的版本。另一种方法稍显复杂,但能提供最新的稳定版本。

使用 Docker 意味着开启一个新的计算领域,但如果你刚刚开始使用 Docker,安装可能看起来是一项艰巨的任务。

在 Ubuntu 上安装 Docker 有两种推荐的方法:

  • 从 Ubuntu 的仓库安装 Docker:简单的单行命令,但提供旧版本
  • 使用 Docker 的官方仓库:工作量稍多,但提供了最新的稳定版本

我将在本教程中讨论它们。

方法 1:使用 Ubuntu 的仓库安装 Docker

如果你不在意旧版本,并且不想设置和管理仓库,那么这是最适合你的方法。

从更新仓库索引开始:

sudo apt update

现在,你可以使用以下命令在 Ubuntu 中安装 Docker 以及 Docker Compose

sudo apt install docker.io docker-compose

? Docker 包被命名为 docker.io,因为在 Docker 出现之前就已经存在一个名为 docker(用于 Dockerlet 应用)的过渡包。因此,Docker 包必须被命名为其他名称。

安装完成后,你可以使用以下命令检查安装的版本:

docker -v

如你所见,它给了我 Docker 24.0.5。

方法 2:在 Ubuntu 中安装最新稳定版本的 Docker

如果你想要 Docker 的最新稳定版本,那么你可以从其官方仓库安装 Docker。

步骤 1:删除任何现有的 Docker 包

但在跳到安装部分之前,有必要删除所有以前安装的 Docker。

卸载以前的 Docker,请使用以下命令。

sudo apt remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc

步骤 2:安装依赖项

第一步是安装一些必要的软件包,这些软件包将用于在本教程后面安装 Docker:

sudo apt install ca-certificates curl gnupg lsb-release

你可能已经安装了部分或全部这些软件包,但确认安装没有什么坏处。上面的命令不会伤害你。

步骤 3:添加 Docker 仓库的 GPG 密钥并将其添加到 sources.list

现在,通过 apt 包管理器创建一个具有特殊权限的目录,用于存储加密密钥以进行包验证:

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

接下来,如下所示 使用 curl 命令 下载并导入 Docker 的 GPG 密钥环:

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

下载 GPG 密钥后,使用 chmod 命令更改文件权限,以便系统上的每个用户都可以读取 GPG 密钥:

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

最后,将 Docker 仓库添加到 sources.list.d 文件中:

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

就是这样!

步骤 4:安装 Docker 和 Docker Compose

现在,要使你对系统所做的更改生效,请更新系统仓库:

sudo apt update

使用以下命令获取最新版本的 Docker 以及其他 Docker 组件和依赖项:

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

? 虽然 docker.io 包安装了大部分必需的 Docker 组件,但你需要在此处单独进行安装。

要检查已安装的版本,请使用以下命令:

docker -v

测试安装的另一个方法是在 Docker 中使用 “Hello World” 镜像。

让我告诉你如何做。

使用 hello-world 镜像来验证 Docker 安装

运行 “Hello World” 程序是我们启动任何编程之旅时都遵循的标准做法,Docker 也是如此。

Docker 为你提供了一个 “Hello World” 镜像,你可以使用它来测试安装。

要安装并运行 “Hello World” 镜像,只需使用以下命令:

sudo docker run hello-world

某些用户在执行上述命令时可能会收到错误消息“无法连接到 Docker 守护进程”:

在这种情况下,重新启动系统并再次尝试安装 Docker Hello World 镜像,它将正常工作。

? 额外提示:在 Ubuntu 中使用 Docker 而无需 sudo

如果你注意到了,我使用 sudo 来拉取 Docker 镜像,这并不是使用 Docker 最方便的方式。

如果你尝试在不使用 sudo 的情况下使用 Docker,则会出现错误:

好吧,在本节中,我将向你展示如何在没有 sudo 的情况下使用 Docker。

? 要执行所示步骤,必须具有超级用户权限!

第一步是使用以下命令 创建一个名为 docker 的新组

sudo groupadd docker

完成后,使用以下命令将用户添加到 docker 组:

sudo usermod -aG docker <用户名>

? 确保你只添加具有超级用户权限的用户。

现在,注销并重新登录以使更改生效。但如果你使用的是虚拟机,那么必须重新启动。

就是这样!从现在开始,你可以使用 docker 命令而不需要 sudo,就像我运行 Docker Hello World 镜像一样:

就这样吧。

这是安装 Docker 后要做的事情

如果你刚刚开始,请参阅每个用户都必须了解的 基本 Docker 命令列表

21 个基本 Docker 命令

我希望你觉得会有帮助。

(题图:DA/759e483b-0be8-409e-bc58-ed19d99cbdd4)


via: https://itsfoss.com/install-docker-ubuntu/

作者:Sagar Sharma 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

在CentOS系统中为Do...
理解Docker存储的核心机制:驱动与分层管理 在CentOS系统...
2025-06-16 07:41:58
Docker 4.42 版...
IT之家 6 月 12 日消息,科技媒体 linuxiac 昨日(...
2025-06-12 15:13:33
我的docker随笔39:...
本文介绍在容器中修改时间而不影响宿主机的系统时间。 问题提出 某容...
2025-06-01 18:45:21
【Docker】Netwo...
文章目录网络情况查看宿主机网络情况 `ifconfig&#...
2025-06-01 12:34:38
【Docker】Mysql...
文章目录安装mysql主从复制新建主服务器容器实例3307配置文件...
2025-05-31 14:48:56
关于docker mysq...
一,问题描述:         请求...
2025-05-31 01:58:31

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
2024 开年,LLUG 和你... Hi,Linuxer,2024 新年伊始,不知道你是否已经准备好迎接新的一年~ 2024 年,Lin...
什么是 KDE Connect... 什么是 KDE Connect?它的主要特性是什么?它应该如何安装?本文提供了基本的使用指南。科技日...
Opera 浏览器内置的 VP... 昨天我们报道过 Opera 浏览器内置了 VPN 服务,用户打开它可以防止他们的在线活动被窥视。不过...