专业编程基础技术教程

网站首页 > 基础教程 正文

「047」Docker:Docker 的安装

ccvgpt 2024-08-06 12:33:56 基础教程 11 ℃

大家可以直接按照官方文档进行安装,但由于国内的网络环境不同,还是强烈建议参考本文的方式安装。

Docker 官方安装文档地址如下:

「047」Docker:Docker 的安装

https://docs.docker.com/engine/install/

根据官方文档的介绍,Docker 的安装归为两类,分别是 Descktop 和 Server:

对于 Windows 和 macOS 操作系统,可以直接下载 Desktop 安装程序。如果是在 Linux 服务器上,则可以使用脚本安装或下载 Server 安装包(.deb.rpm)来安装。

下面分别演示如何在 Windows 和 Linux 操作系统上安装 Docker。

Windows 安装 Docker

安装 WSL

在 Windows 上安装 Docker 之前,需要先安装 WSL,Windows Subsystem for Linux(适用于 Linux 的 Windows 子系统)的简写。它有两个版本,WSL 1 和 WSL 2。如果你的操作系统不是太旧,默认将会安装 WSL 2,它具有更好的整体性能。

安装 WSL 2,要求你的系统必须是 64 位 Windows 10 版本(2004 及更高版本)或 Windows 11。

在安装 WSL 2 之前,需要先启用“适用于 Linux 的 Windows 子系统”功能。以管理员身份打开 PowerShell,然后输入以下命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

完成后,重启计算机再进行下一步。

计算机重启后,还需要启用 Windows 的“虚拟机平台”功能,以管理员身份打开 PowerShell,运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

接着还需要从微软下载一个 Linux 内核升级包 wsl_update_x64.msi

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

下载完成后直接安装。

接下来需要安装 Linux 发行版,这里选择 Ubuntu。打开微软应用商店,搜索 Ubuntu,在列表中选择最新的长期支持版本 20.04 LTS 并点击“获取”开始安装。

Ubuntu 的 WSL 有将近 500M,它内置了常用的工具包,不需要自己安装。如果你喜欢折腾或只是想体验一下,你可以安装 Debian 子系统。相比 Ubuntu,Debian 要小很多,只有不到 100 M。

安装完 Windows 子系统后,使用任一终端输入以下命令查看 WSL 版本,确保 WSL 的版本为 2.0:

PS C:\Users\Liam> wsl -l -v
  NAME      STATE           VERSION
* Debian    Stopped         2

如果你之前安装过 WSL,当前不是 WSL 2 版本,可以通过以下命令设置 WSL 的默认版本:

wsl --set-version 2

安装 Docker

在 Windows 上完成了 WSL 的安装,Docker 安装就简单多了。在本文前面的官方文档中进入 Windows 安装向导文档,点击文中的下载按钮,或直接复制下面的下载链接,下载 Docker 安装程序。

https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe

下载完后,双击运行安装程序,使用默认选项,点击“Ok”,开始安装。

等待片刻即可看到完成安装界面。

点击“Close and restart”重启系统。重启后,Docker 桌面应用程序将自动启动,你将看到如下界面:

打开 PowerShell 查看并确认 Docker 版本信息:

PS C:\Users\Liam> docker version
Client:
 Cloud integration: v1.0.22
 Version:           20.10.13
 API version:       1.41
 Go version:        go1.16.15
 Git commit:        a224086
 Built:             Thu Mar 10 14:13:04 2022
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true

Server: Docker Desktop 4.6.0 (75818)
 Engine:
  Version:          20.10.13
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.15
  Git commit:       906f57f
  Built:            Thu Mar 10 14:06:05 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.5.10
  GitCommit:        2a1d4dbdb2a1030dc5b01e96fb110a9d9f150ecc
 runc:
  Version:          1.0.3
  GitCommit:        v1.0.3-0-gf46b6ba
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

看到如上信息说明 Docker 在你的计算机上安装成功了。正如上一篇文章讲到的,Docker 是 C/S 架构,这里显示了 Docker 的 Client 和 Server 两端的信息。

Linux 安装 Docker

在文章开头的官方安装文档页面中有每个 Linux 发行版的安装指导链接,根据你的 Linux 版本点击相应链接,按照官方文档的步骤进行安装即可。

但在为 Linux 安装 Docker 之前建议先切换一下 Linux 软件镜像源,使用国内源可以加快安装。

这里以 CentOS 为例,先介绍两种切换源的方法,手动切换和使用脚本切换。

手动切换源

国内有好几个 Linux 软件镜像源,常用的是阿里的和腾讯的。

阿里镜像源列表:

https://developer.aliyun.com/mirror/

腾讯镜像源列表:

https://mirrors.cloud.tencent.com/

以我个人的 CentOS 8 服务器为例,我的服务器版本是:

$ cat /etc/centos-release
CentOS Linux release 8.5.2111

由于 CentOS 8 官方已停止维护结束了生命周期,默认的源也不能用了,所以必须要先切换源。

这里我选择切换成阿里的源。先执行如下命令将原来的源文件 *.repo 都备份一下:

$ mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/

下载新的 CentOS-Base.repo/etc/yum.repos.d/

$ wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

接着重新生成一下缓存:

$ yum clean all && yum makecache

使用脚本切换源

有一个 Linux 一键换源脚本,非常方便,推荐使用这种方式来换源。官方介绍地址:

https://supermanito.github.io/LinuxMirrors

不仅支持 CentOS,还支持其他 Linux 发行版本,安装时有 10 多个国内的软件源可供选择。

运行命令:

$ bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/ChangeMirrors.sh)

完整复制上面的命令到终端按回车键即可执行,若无法安装 curl 软件包可复制源码到本地后手动执行。

安装 Docker

Linux 安装 Docker 也很简单,官方文档给出了多种安装方式,这里推荐使用官方脚本安装。

使用 curl 下载脚本:

$ curl -fsSL https://get.docker.com -o get-docker.sh

再执行该脚本:

$ sudo sh get-docker.sh

等待安装完成后,执行如下命令启动 Docker 守护程序:

$ sudo systemctl start docker

最后运行如下命令检查已安装 Docker 版本:

$ docker version
Client: Docker Engine - Community
 Version:           20.10.13
 API version:       1.41
 Go version:        go1.16.15
 Git commit:        a224086
 Built:             Thu Mar 10 14:07:38 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.13
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.15
  Git commit:       906f57f
  Built:            Thu Mar 10 14:05:59 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.5.10
  GitCommit:        2a1d4dbdb2a1030dc5b01e96fb110a9d9f150ecc
 runc:
  Version:          1.0.3
  GitCommit:        v1.0.3-0-gf46b6ba
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

看到上面信息说明我们的 Docker 已经安装成功了。

小结

本文介绍了如何在 Windows 和 Linux 上安装 Docker,并顺便介绍了 Windows 的 WSL 的安装,和 Linux 软件源的切换方法。下一篇我将开始介绍 Docker CLI 的基本命令。

最近发表
标签列表