myfreax

如何在CentOS 7安装Docker

Docker是一种容器化技术,可让您快速构建,测试和部署应用程序,作为可在任何地方虚拟运行的可移植自足容器

5 min read
By myfreax
如何在CentOS 7安装Docker

Docker是一种容器化技术,可让您快速构建,测试和部署应用程序,作为可在任何地方虚拟运行的可移植自足容器。

在本教程中,我们将介绍如何在CentOS 7安装Docker,并探索基本的Docker概念和命令。

我们假设您以root或者具有sudo权限的用户登录。如果你当前登录的用户没有sudo权限可查看我们的教程如何创建sudo用户在CentOS

尽管Docker在CentOS 7官方存储库中可用,但它不一定总是最新版本。推荐的方法是从Docker的仓库中安装Docker。

要在CentOS 7服务器上安装Docker,请执行以下步骤。首先更新您的系统软件包并安装所需的依赖软件。

接下来,运行yum-config-manager命令,将Docker仓库添加到您的系统中。启用Docker仓库后,使用sudo yum install docker-ce命令安装最新版本的Docker。

安装Docker后,运行sudo systemctl enable docker命令启动Docker服务并使其在启动时自动启动。

sudo yum update
sudo yum install yum-utils device-mapper-persistent-data lvm2

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

sudo yum install docker-ce
sudo systemctl start docker
sudo systemctl enable docker

当发布新版本的Docker时,Docker都会随着系统更新而升级,当然您可以手动运行sudo yum update来更新/升级docker。

你可运行命令sudo systemctl status docker验证Docker服务是否正在运行。在撰写本文时,Docker的当前版本为18.06.1。你可运行命令docker -v打印docker版本信息。

默认情况下,Docker从Docker Hub合并镜像。这是一项基于云的注册服务。

Docker在合并镜像时默认使用的是Docker Hub的地址,但在GFW之下,Docker Hub下载速度会非常慢。

在不使用代理加速的情况下,虽然还能使用。但是使用镜像加速会好很多,朝内也有很多docker镜像,有些是有限制的。总的来说还是阿里云镜像好用。

由于文章篇幅不宜过多,你可参考我们教程使用阿里云的仓库配置Docker镜像

配置Docker阿里云镜像 | myfreax
在GFW之下,Docker Hub在不使用代理加速的情况下,虽然还能使用,但是使用镜像加速会好很多,国内也有很多docker镜像,有些是有限制的,总的来说还是阿里云镜像好用

不使用sudo运行docker

默认情况下,只有root用户,具有sudo权限的用户以及docker组成员可以执行docker命令。

但是docker我们经常使用的命令,没有必须每次运行docker都使用或者切换docker用户。

如果在要以非root用户或者docker用户运行Docker,您需要将您的用户添加到docker组中。

docker组的成员可以运行docker,而不必每次使用sudo命令切换用户运行。你可使用usermod命令将当前用户追加到docker组中。

sudo usermod -aG docker $USER
newgrp docker

$USER是保存您当前用户名的环境变量newgrp命令使usermod命令更改在当前终端中生效。

现在您可以在不添加sudo的情况下执行docker命令,让我们将运行Docker官方Hello-World测试容器docker container run hello-world以是否正确配置。

该命令将下载测试镜像,然后运行它,它将打印Hello from Docker消息。由于没有长时间运行的进程,因此容器在打印完消息后将停止。

卸载Docker

卸载Docker之前,最好删除所有容器,镜像,卷和网络。否则你计算机将会存在大量docker镜像,docker的临时数据。占用着你磁盘空间。

当然你也可以保留数据直接卸载Docker。如果你保留Docker的数据我们建议你使用sudo yum remove containerd.io docker-compose-plugin docker-ce卸载Docker。

如果你删除了Docker所有数据,可以使用sudo yum remove containerd.io docker-compose-plugin docker-ce卸载Docker。这也会把Docker的配置文件删除。

您已经了解了如何在CentOS 7计算机上安装Docker,以及如何下载Docker映像和管理Docker容器。

您可能还需要阅读 Docker Compose ,它使您可以定义和运行多容器Docker应用程序。如果您有任何疑问或意见,请在下面发表评论。