TranslateProject/published/20231204 How to Install Docker on Ubuntu.md

227 lines
7.4 KiB
Markdown
Raw Normal View History

2023-12-28 08:42:37 +08:00
[#]: subject: "How to Install Docker on Ubuntu"
[#]: via: "https://itsfoss.com/install-docker-ubuntu/"
[#]: author: "Sagar Sharma https://itsfoss.com/author/sagar/"
[#]: collector: "lujun9972/lctt-scripts-1700446145"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-16531-1.html"
2023-12-28 08:42:37 +08:00
如何在 Ubuntu 上安装 Docker
======
![][0]
> 了解在 Ubuntu 上安装 Docker 的两种官方方法。一种很简单,但可能会给你一个稍旧的版本。另一种方法稍显复杂,但能提供最新的稳定版本。
2023-12-28 08:42:37 +08:00
使用 Docker 意味着开启一个新的计算领域,但如果你刚刚开始使用 Docker安装可能看起来是一项艰巨的任务。
在 Ubuntu 上安装 Docker 有两种推荐的方法:
* **从 Ubuntu 的仓库安装 Docker**:简单的单行命令,但提供旧版本
2023-12-28 08:42:37 +08:00
* **使用 Docker 的官方仓库**:工作量稍多,但提供了最新的稳定版本
我将在本教程中讨论它们。
### 方法 1使用 Ubuntu 的仓库安装 Docker
如果你不在意旧版本,并且不想设置和管理仓库,那么这是最适合你的方法。
2023-12-28 08:42:37 +08:00
从更新仓库索引开始:
```
sudo apt update
```
2023-12-28 08:42:37 +08:00
现在,你可以使用以下命令在 Ubuntu 中安装 Docker 以及 [Docker Compose][1]
```
sudo apt install docker.io docker-compose
```
2023-12-28 08:42:37 +08:00
> 📋 Docker 包被命名为 `docker.io`,因为在 Docker 出现之前就已经存在一个名为 docker用于 Dockerlet 应用的过渡包。因此Docker 包必须被命名为其他名称。
2023-12-28 08:42:37 +08:00
安装完成后,你可以使用以下命令检查安装的版本:
```
docker -v
```
2023-12-28 08:42:37 +08:00
![][2]
如你所见,它给了我 Docker 24.0.5。
### 方法 2在 Ubuntu 中安装最新稳定版本的 Docker
如果你想要 Docker 的最新稳定版本,那么你可以从其官方仓库安装 Docker。
#### 步骤 1删除任何现有的 Docker 包
但在跳到安装部分之前,有必要删除所有以前安装的 Docker。
要 [卸载以前的 Docker][3],请使用以下命令。
2023-12-28 08:42:37 +08:00
```
sudo apt remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc
```
2023-12-28 08:42:37 +08:00
#### 步骤 2安装依赖项
第一步是安装一些必要的软件包,这些软件包将用于在本教程后面安装 Docker
```
sudo apt install ca-certificates curl gnupg lsb-release
```
2023-12-28 08:42:37 +08:00
你可能已经安装了部分或全部这些软件包,但确认安装没有什么坏处。上面的命令不会伤害你。
#### 步骤 3添加 Docker 仓库的 GPG 密钥并将其添加到 sources.list
现在,通过 `apt` 包管理器创建一个具有特殊权限的目录,用于存储加密密钥以进行包验证:
2023-12-28 08:42:37 +08:00
```
sudo install -m 0755 -d /etc/apt/keyrings
2023-12-28 08:42:37 +08:00
```
接下来,如下所示 [使用 curl 命令][4] 下载并导入 Docker 的 GPG 密钥环:
2023-12-28 08:42:37 +08:00
```
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
2023-12-28 08:42:37 +08:00
```
下载 GPG 密钥后,[使用 chmod 命令更改文件权限][5],以便系统上的每个用户都可以读取 GPG 密钥:
```
sudo chmod a+r /etc/apt/keyrings/docker.gpg
```
2023-12-28 08:42:37 +08:00
最后,将 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
2023-12-28 08:42:37 +08:00
```
就是这样!
#### 步骤 4安装 Docker 和 Docker Compose
现在,要使你对系统所做的更改生效,请更新系统仓库:
```
sudo apt update
```
2023-12-28 08:42:37 +08:00
使用以下命令获取最新版本的 Docker 以及其他 Docker 组件和依赖项:
```
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
```
2023-12-28 08:42:37 +08:00
> 📋 虽然 docker.io 包安装了大部分必需的 Docker 组件,但你需要在此处单独进行安装。
2023-12-28 08:42:37 +08:00
要检查已安装的版本,请使用以下命令:
```
docker -v
```
2023-12-28 08:42:37 +08:00
![][6]
测试安装的另一个方法是在 Docker 中使用 “Hello World” 镜像。
2023-12-28 08:42:37 +08:00
让我告诉你如何做。
### 使用 hello-world 镜像来验证 Docker 安装
运行 “Hello World” 程序是我们启动任何编程之旅时都遵循的标准做法Docker 也是如此。
2023-12-28 08:42:37 +08:00
Docker 为你提供了一个 “Hello World” 镜像,你可以使用它来测试安装。
2023-12-28 08:42:37 +08:00
要安装并运行 “Hello World” 镜像,只需使用以下命令:
2023-12-28 08:42:37 +08:00
```
sudo docker run hello-world
```
2023-12-28 08:42:37 +08:00
![][7]
某些用户在执行上述命令时可能会收到错误消息“无法连接到 Docker 守护进程”:
![][8]
在这种情况下,**重新启动系统**并再次尝试安装 Docker Hello World 镜像,它将正常工作。
### 💡 额外提示:在 Ubuntu 中使用 Docker 而无需 sudo
2023-12-28 08:42:37 +08:00
如果你注意到了,我使用 sudo 来拉取 Docker 镜像,这并不是使用 Docker 最方便的方式。
2023-12-28 08:42:37 +08:00
如果你尝试在不使用 sudo 的情况下使用 Docker则会出现错误
![][9]
好吧,在本节中,我将向你展示如何在没有 sudo 的情况下使用 Docker。
> 📋 要执行所示步骤,必须具有超级用户权限!
2023-12-28 08:42:37 +08:00
第一步是使用以下命令 [创建一个名为 docker 的新组][10]
2023-12-28 08:42:37 +08:00
```
sudo groupadd docker
```
2023-12-28 08:42:37 +08:00
完成后,使用以下命令将用户添加到 `docker` 组:
2023-12-28 08:42:37 +08:00
```
sudo usermod -aG docker <用户名>
```
2023-12-28 08:42:37 +08:00
> 🚧 确保你只添加具有超级用户权限的用户。
2023-12-28 08:42:37 +08:00
现在,注销并重新登录以使更改生效。但如果你使用的是虚拟机,那么必须重新启动。
就是这样!从现在开始,你可以使用 `docker` 命令而不需要 sudo就像我运行 Docker Hello World 镜像一样:
2023-12-28 08:42:37 +08:00
![][11]
就这样吧。
### 这是安装 Docker 后要做的事情
如果你刚刚开始,请参阅每个用户都必须了解的 [基本 Docker 命令列表][12]
2023-12-28 08:42:37 +08:00
> **[21 个基本 Docker 命令][12]**
2023-12-28 08:42:37 +08:00
我希望你觉得会有帮助。
*题图DA/759e483b-0be8-409e-bc58-ed19d99cbdd4*
2023-12-28 08:42:37 +08:00
--------------------------------------------------------------------------------
via: https://itsfoss.com/install-docker-ubuntu/
作者:[Sagar Sharma][a]
选题:[lujun9972][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
2023-12-28 08:42:37 +08:00
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/sagar/
[b]: https://github.com/lujun9972
[1]: https://linuxhandbook.com/docker-compose-quick-start/
[2]: https://itsfoss.com/content/images/2023/12/Check-the-installed-version-of-docker-in-Ubuntu.png
[3]: https://learnubuntu.com/uninstall-docker/
[4]: https://learnubuntu.com/install-curl/
[5]: https://learnubuntu.com/chmod-command/
[6]: https://itsfoss.com/content/images/2023/12/Install-the-latest-version-of-Docker-in-Ubuntu-using-Docker-s-official-repository.png
[7]: https://itsfoss.com/content/images/2023/12/Run-hello-world-docker-image-in-Ubuntu.png
[8]: https://itsfoss.com/content/images/2023/12/Docker-error.png
[9]: https://itsfoss.com/content/images/2023/12/Docker-sudo-error-in-Ubuntu.png
[10]: https://learnubuntu.com/add-group/
[11]: https://itsfoss.com/content/images/2023/12/Use-docker-without-sudo-in-Ubuntu.png
[12]: https://linuxhandbook.com/essential-docker-commands/
[13]: https://linuxhandbook.com/content/images/size/w256h256/2021/08/Linux-Handbook-New-Logo.png
[0]: https://img.linux.net.cn/data/attachment/album/202401/03/224510gfpbdwbdvbmverbg.jpg