mirror of
https://github.com/LCTT/TranslateProject.git
synced 2024-12-26 21:30:55 +08:00
Merge pull request #30725 from wxy/20231204-How-to-Install-Docker-on-Ubuntu
RP:published/20231204 How to Install Docker on Ubuntu.md
This commit is contained in:
commit
fc9fcc77a3
@ -3,55 +3,49 @@
|
|||||||
[#]: author: "Sagar Sharma https://itsfoss.com/author/sagar/"
|
[#]: author: "Sagar Sharma https://itsfoss.com/author/sagar/"
|
||||||
[#]: collector: "lujun9972/lctt-scripts-1700446145"
|
[#]: collector: "lujun9972/lctt-scripts-1700446145"
|
||||||
[#]: translator: "geekpi"
|
[#]: translator: "geekpi"
|
||||||
[#]: reviewer: " "
|
[#]: reviewer: "wxy"
|
||||||
[#]: publisher: " "
|
[#]: publisher: "wxy"
|
||||||
[#]: url: " "
|
[#]: url: "https://linux.cn/article-16531-1.html"
|
||||||
|
|
||||||
如何在 Ubuntu 上安装 Docker
|
如何在 Ubuntu 上安装 Docker
|
||||||
======
|
======
|
||||||
|
|
||||||
|
![][0]
|
||||||
|
|
||||||
|
> 了解在 Ubuntu 上安装 Docker 的两种官方方法。一种很简单,但可能会给你一个稍旧的版本。另一种方法稍显复杂,但能提供最新的稳定版本。
|
||||||
|
|
||||||
使用 Docker 意味着开启一个新的计算领域,但如果你刚刚开始使用 Docker,安装可能看起来是一项艰巨的任务。
|
使用 Docker 意味着开启一个新的计算领域,但如果你刚刚开始使用 Docker,安装可能看起来是一项艰巨的任务。
|
||||||
|
|
||||||
在 Ubuntu 上安装 Docker 有两种推荐的方法:
|
在 Ubuntu 上安装 Docker 有两种推荐的方法:
|
||||||
|
|
||||||
* **从 Ubuntu 的仓库安装 Docker** :简单的单行命令,但提供旧版本
|
* **从 Ubuntu 的仓库安装 Docker**:简单的单行命令,但提供旧版本
|
||||||
* **使用 Docker 的官方仓库**:工作量稍多,但提供了最新的稳定版本
|
* **使用 Docker 的官方仓库**:工作量稍多,但提供了最新的稳定版本
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
我将在本教程中讨论它们。
|
我将在本教程中讨论它们。
|
||||||
|
|
||||||
### 方法 1:使用 Ubuntu 的仓库安装 Docker
|
### 方法 1:使用 Ubuntu 的仓库安装 Docker
|
||||||
|
|
||||||
如果你不关心旧版本,并且不想设置和管理仓库,那么这是最适合你的方法。
|
如果你不在意旧版本,并且不想设置和管理仓库,那么这是最适合你的方法。
|
||||||
|
|
||||||
从更新仓库索引开始:
|
从更新仓库索引开始:
|
||||||
|
|
||||||
````
|
```
|
||||||
|
sudo apt update
|
||||||
sudo apt update
|
```
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
现在,你可以使用以下命令在 Ubuntu 中安装 Docker 以及 [Docker Compose][1]:
|
现在,你可以使用以下命令在 Ubuntu 中安装 Docker 以及 [Docker Compose][1]:
|
||||||
|
|
||||||
````
|
```
|
||||||
|
sudo apt install docker.io docker-compose
|
||||||
|
```
|
||||||
|
|
||||||
sudo apt install docker.io docker-compose
|
> 📋 Docker 包被命名为 `docker.io`,因为在 Docker 出现之前就已经存在一个名为 docker(用于 Dockerlet 应用)的过渡包。因此,Docker 包必须被命名为其他名称。
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
📋
|
|
||||||
|
|
||||||
Docker 包被命名为 docker.io,因为甚至在 Docker 出现之前就已经存在一个名为 docker(用于 Dockerlet 应用)的过渡包。因此,Docker 包必须被命名为其他名称。
|
|
||||||
|
|
||||||
安装完成后,你可以使用以下命令检查安装的版本:
|
安装完成后,你可以使用以下命令检查安装的版本:
|
||||||
|
|
||||||
````
|
```
|
||||||
|
docker -v
|
||||||
docker -v
|
```
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
![][2]
|
![][2]
|
||||||
|
|
||||||
@ -65,61 +59,49 @@ Docker 包被命名为 docker.io,因为甚至在 Docker 出现之前就已经
|
|||||||
|
|
||||||
但在跳到安装部分之前,有必要删除所有以前安装的 Docker。
|
但在跳到安装部分之前,有必要删除所有以前安装的 Docker。
|
||||||
|
|
||||||
要[卸载以前的 Docker][3],请使用以下命令。
|
要 [卸载以前的 Docker][3],请使用以下命令。
|
||||||
|
|
||||||
````
|
```
|
||||||
|
sudo apt remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc
|
||||||
sudo apt remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc
|
```
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
#### 步骤 2:安装依赖项
|
#### 步骤 2:安装依赖项
|
||||||
|
|
||||||
第一步是安装一些必要的软件包,这些软件包将用于在本教程后面安装 Docker:
|
第一步是安装一些必要的软件包,这些软件包将用于在本教程后面安装 Docker:
|
||||||
|
|
||||||
````
|
```
|
||||||
|
sudo apt install ca-certificates curl gnupg lsb-release
|
||||||
sudo apt install ca-certificates curl gnupg lsb-release
|
```
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
你可能已经安装了部分或全部这些软件包,但确认安装没有什么坏处。上面的命令不会伤害你。
|
你可能已经安装了部分或全部这些软件包,但确认安装没有什么坏处。上面的命令不会伤害你。
|
||||||
|
|
||||||
#### 步骤 3:添加 Docker 仓库的 GPG 密钥并将其添加到 sources.list
|
#### 步骤 3:添加 Docker 仓库的 GPG 密钥并将其添加到 sources.list
|
||||||
|
|
||||||
现在,通过 apt 包管理器创建一个具有特殊权限的目录,用于存储加密密钥以进行包验证:
|
现在,通过 `apt` 包管理器创建一个具有特殊权限的目录,用于存储加密密钥以进行包验证:
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
sudo install -m 0755 -d /etc/apt/keyrings
|
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
接下来,如下所示[使用 curl 命令][4]下载并导入 Docker 的 GPG 密钥环:
|
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo install -m 0755 -d /etc/apt/keyrings
|
||||||
```
|
```
|
||||||
|
|
||||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
接下来,如下所示 [使用 curl 命令][4] 下载并导入 Docker 的 GPG 密钥环:
|
||||||
|
|
||||||
|
```
|
||||||
|
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
||||||
```
|
```
|
||||||
|
|
||||||
下载 GPG 密钥后,[使用 chmod 命令更改文件权限][5],以便系统上的每个用户都可以读取 GPG 密钥:
|
下载 GPG 密钥后,[使用 chmod 命令更改文件权限][5],以便系统上的每个用户都可以读取 GPG 密钥:
|
||||||
|
|
||||||
````
|
```
|
||||||
|
sudo chmod a+r /etc/apt/keyrings/docker.gpg
|
||||||
sudo chmod a+r /etc/apt/keyrings/docker.gpg
|
```
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
最后,将 Docker 仓库添加到 `sources.list.d` 文件中:
|
最后,将 Docker 仓库添加到 `sources.list.d` 文件中:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
echo \
|
||||||
echo \
|
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
|
||||||
"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" | \
|
||||||
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
|
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||||
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
就是这样!
|
就是这样!
|
||||||
@ -128,51 +110,41 @@ Docker 包被命名为 docker.io,因为甚至在 Docker 出现之前就已经
|
|||||||
|
|
||||||
现在,要使你对系统所做的更改生效,请更新系统仓库:
|
现在,要使你对系统所做的更改生效,请更新系统仓库:
|
||||||
|
|
||||||
````
|
```
|
||||||
|
sudo apt update
|
||||||
sudo apt update
|
```
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
使用以下命令获取最新版本的 Docker 以及其他 Docker 组件和依赖项:
|
使用以下命令获取最新版本的 Docker 以及其他 Docker 组件和依赖项:
|
||||||
|
|
||||||
````
|
```
|
||||||
|
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||||||
|
```
|
||||||
|
|
||||||
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
> 📋 虽然 docker.io 包安装了大部分必需的 Docker 组件,但你需要在此处单独进行安装。
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
📋
|
|
||||||
|
|
||||||
虽然 docker.io 包安装了大部分必需的 Docker 组件,但你需要在此处单独进行安装。
|
|
||||||
|
|
||||||
要检查已安装的版本,请使用以下命令:
|
要检查已安装的版本,请使用以下命令:
|
||||||
|
|
||||||
````
|
```
|
||||||
|
docker -v
|
||||||
docker -v
|
```
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
![][6]
|
![][6]
|
||||||
|
|
||||||
测试安装的另一个方法是在 Docker 中使用 Hello World 镜像。
|
测试安装的另一个方法是在 Docker 中使用 “Hello World” 镜像。
|
||||||
|
|
||||||
让我告诉你如何做。
|
让我告诉你如何做。
|
||||||
|
|
||||||
### 使用 hello-world 镜像来验证 Docker 安装
|
### 使用 hello-world 镜像来验证 Docker 安装
|
||||||
|
|
||||||
运行 Hello World 程序是我们启动任何编程之旅时都遵循的标准做法,Docker 也是如此。
|
运行 “Hello World” 程序是我们启动任何编程之旅时都遵循的标准做法,Docker 也是如此。
|
||||||
|
|
||||||
Docker 为你提供了一个 Hello World 镜像,你可以使用它来测试安装。
|
Docker 为你提供了一个 “Hello World” 镜像,你可以使用它来测试安装。
|
||||||
|
|
||||||
要安装并运行 Hello World 映像,只需使用以下命令:
|
要安装并运行 “Hello World” 镜像,只需使用以下命令:
|
||||||
|
|
||||||
````
|
```
|
||||||
|
sudo docker run hello-world
|
||||||
sudo docker run hello-world
|
```
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
![][7]
|
![][7]
|
||||||
|
|
||||||
@ -182,9 +154,9 @@ Docker 为你提供了一个 Hello World 镜像,你可以使用它来测试安
|
|||||||
|
|
||||||
在这种情况下,**重新启动系统**并再次尝试安装 Docker Hello World 镜像,它将正常工作。
|
在这种情况下,**重新启动系统**并再次尝试安装 Docker Hello World 镜像,它将正常工作。
|
||||||
|
|
||||||
### 💡额外提示:在 Ubuntu 中使用 docker 而无需 sudo
|
### 💡 额外提示:在 Ubuntu 中使用 Docker 而无需 sudo
|
||||||
|
|
||||||
如果你注意到了,我使用 sudo 来拉取 docker 镜像,这并不是使用 Docker 最方便的方式。
|
如果你注意到了,我使用 sudo 来拉取 Docker 镜像,这并不是使用 Docker 最方便的方式。
|
||||||
|
|
||||||
如果你尝试在不使用 sudo 的情况下使用 Docker,则会出现错误:
|
如果你尝试在不使用 sudo 的情况下使用 Docker,则会出现错误:
|
||||||
|
|
||||||
@ -192,33 +164,25 @@ Docker 为你提供了一个 Hello World 镜像,你可以使用它来测试安
|
|||||||
|
|
||||||
好吧,在本节中,我将向你展示如何在没有 sudo 的情况下使用 Docker。
|
好吧,在本节中,我将向你展示如何在没有 sudo 的情况下使用 Docker。
|
||||||
|
|
||||||
📋
|
> 📋 要执行所示步骤,必须具有超级用户权限!
|
||||||
|
|
||||||
要执行所示步骤,必须具有超级用户权限!
|
第一步是使用以下命令 [创建一个名为 docker 的新组][10]:
|
||||||
|
|
||||||
第一步是使用以下命令[创建一个名为 `Docker` 的新组][10]:
|
```
|
||||||
|
sudo groupadd docker
|
||||||
|
```
|
||||||
|
|
||||||
````
|
完成后,使用以下命令将用户添加到 `docker` 组:
|
||||||
|
|
||||||
sudo groupadd docker
|
```
|
||||||
|
sudo usermod -aG docker <用户名>
|
||||||
|
```
|
||||||
|
|
||||||
````
|
> 🚧 确保你只添加具有超级用户权限的用户。
|
||||||
|
|
||||||
完成后,使用以下命令将用户添加到 Docker 组:
|
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
sudo usermod -aG docker <用户名>
|
|
||||||
|
|
||||||
````
|
|
||||||
|
|
||||||
🚧
|
|
||||||
|
|
||||||
确保你只添加具有超级用户权限的用户。
|
|
||||||
|
|
||||||
现在,注销并重新登录以使更改生效。但如果你使用的是虚拟机,那么必须重新启动。
|
现在,注销并重新登录以使更改生效。但如果你使用的是虚拟机,那么必须重新启动。
|
||||||
|
|
||||||
就是这样!从现在开始,你可以使用 docker 命令而不需要 sudo,就像我运行 Docker Hello World 镜像一样:
|
就是这样!从现在开始,你可以使用 `docker` 命令而不需要 sudo,就像我运行 Docker Hello World 镜像一样:
|
||||||
|
|
||||||
![][11]
|
![][11]
|
||||||
|
|
||||||
@ -226,12 +190,14 @@ Docker 为你提供了一个 Hello World 镜像,你可以使用它来测试安
|
|||||||
|
|
||||||
### 这是安装 Docker 后要做的事情
|
### 这是安装 Docker 后要做的事情
|
||||||
|
|
||||||
如果你刚刚开始,请参阅每个用户都必须了解的[基本 Docker 命令列表][12]:
|
如果你刚刚开始,请参阅每个用户都必须了解的 [基本 Docker 命令列表][12]:
|
||||||
|
|
||||||
![][13]
|
> **[21 个基本 Docker 命令][12]**
|
||||||
|
|
||||||
我希望你觉得会有帮助。
|
我希望你觉得会有帮助。
|
||||||
|
|
||||||
|
*(题图:DA/759e483b-0be8-409e-bc58-ed19d99cbdd4)*
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
via: https://itsfoss.com/install-docker-ubuntu/
|
via: https://itsfoss.com/install-docker-ubuntu/
|
||||||
@ -239,7 +205,7 @@ via: https://itsfoss.com/install-docker-ubuntu/
|
|||||||
作者:[Sagar Sharma][a]
|
作者:[Sagar Sharma][a]
|
||||||
选题:[lujun9972][b]
|
选题:[lujun9972][b]
|
||||||
译者:[geekpi](https://github.com/geekpi)
|
译者:[geekpi](https://github.com/geekpi)
|
||||||
校对:[校对者ID](https://github.com/校对者ID)
|
校对:[wxy](https://github.com/wxy)
|
||||||
|
|
||||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||||
|
|
||||||
@ -258,3 +224,4 @@ via: https://itsfoss.com/install-docker-ubuntu/
|
|||||||
[11]: https://itsfoss.com/content/images/2023/12/Use-docker-without-sudo-in-Ubuntu.png
|
[11]: https://itsfoss.com/content/images/2023/12/Use-docker-without-sudo-in-Ubuntu.png
|
||||||
[12]: https://linuxhandbook.com/essential-docker-commands/
|
[12]: https://linuxhandbook.com/essential-docker-commands/
|
||||||
[13]: https://linuxhandbook.com/content/images/size/w256h256/2021/08/Linux-Handbook-New-Logo.png
|
[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
|
Loading…
Reference in New Issue
Block a user