«

在 CentOS 7 上安装 Docker

时间:2024-1-4 09:07     作者:六度科技     分类: docker


视频教程地址:https://www.bilibili.com/video/BV1UE41137wb

系统环境:CentOS 7 x86_64 Minimal 1908

Docker 官方安装文档:https://docs.docker.com/install/linux/docker-ce/centos/

1.系统要求

Docker CE 支持的 CentOS 7 的维护版本,本次演示的系统环境为 CentOS 7 x86_64 Minimal 1908,Docker 官方文档中关于系统要求的说明地址为:https://docs.docker.com/install/linux/docker-ce/centos/#os-requirements

2.添加软件仓库

安装 Docker 的方式可以通过 yum 软件仓库去下载安装,也可以下载 RPM 包去本地手动安装。这里我们使用软件仓库去下载安装。首先需要安装一些基本的软件:

$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2

安装好了之后就可以添加仓库了:

$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

第三行就是 Docker 的官方软件仓库地址,这个地址在国内访问会很慢,如果嫌下载速度太慢的话我推荐使用阿里云的镜像仓库地址,阿里云镜像站地址为:https://mirrors.aliyun.com/,下拉找到 Docker CE 点进去就是 Docker CE 的镜像仓库使用说明,也可以通过这个地址直接打开:https://developer.aliyun.com/mirror/docker-ce

找到 CentOS 7 的安装说明中的第二步也就是添加软件源信息,即如下命令:

sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

这个命令和 Docker 文档上给出的命令是一样的,只不过软件源地址换成了阿里云的镜像站地址。

3.安装 Docker

添加好软件仓源之后就可以安装 Docker 了:

sudo yum install docker-ce docker-ce-cli containerd.io

在下载好软件包之后可能会让你确认 Docker 的 GPG 密钥信息,确认密钥的指纹是否和 Docekr 文档上给出的密钥指纹信息一致:

060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35

一致的话就可以输入y确认。安装好之后 Docker 并没有启动,我们需要手动启动 Docker:

$ sudo systemctl start docker

可以将上面命令中的  start  换为  status  来查看 Docker 的运行情况。换为  stop  则停止 Docker,换为  enable  则启用开机自启,换为  disable  则禁用开机自启。

启动了 Docker 之后我们可以运行一个  hello-world  镜像试试看:

$ sudo docker run hello-world

该镜像启动后会输出一些信息。

4.配置非root用户使用docker

在安装好之后的 docker 命令只能通过  sudo  去执行,那是因为 Docker 的守护程序使用 Unix 套接字来监听,而 Unix 套接字是属于  root  用户的,其它用户必须使用  sudo  去访问。但是 Docker 在运行时会授予  docker  用户组下面的用户访问权限。而  docker  用户组在安装好 Docker 之后就自动被创建,如果没有可以使用下面的命令去创建:

$ sudo groupadd docker

接着我们需要将当前用户添加到  docker  用户组中:

$ sudo usermod -aG docker $USER

$USER  就是当前用户的用户名。

加好之后我们需要注销然后重新登陆才会使配置生效。我们也可以使用下面的命令来使配置生效:

$ newgrp docker

接着我们就可以运行不带  sudo  的  docker  命令:

$ docker run hello-world

这部分的内容对应官方文档的地址是:https://docs.docker.com/install/linux/linux-postinstall/#manage-docker-as-a-non-root-user