CentOS 安装 Docker CE [转载]

本文转载自博主【开始战斗】的文章,并在其原文之上略有修改,转载时请注明原作者 开始战斗出处

准备工作

系统要求

Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10。 CentOS 7 满足最低内核的要求,但由于内核版本比较低,部分功能(如 overlay2 存储层驱动)无法使用,并且部分功能可能不太稳定。

卸载旧版本

旧版本的 Docker 称为 docker 或者 docker-engine,使用以下命令卸载旧版本:

1
2
3
4
sudo yum remove docker \
docker-common \
docker-selinux \
docker-engine

使用yum 源安装

执行以下命令安装依赖包

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

鉴于国内网络问题,强烈建议使用国内源,下面先介绍国内源的使用。

国内源

执行下面的命令添加 yum 软件源:

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

以上命令会添加稳定版本的 Docker CE yum 源。从 Docker 17.06 开始,edge test 版本的 yum 源也会包含稳定版本的 Docker CE

官方源
1
2
3
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

如果需要最新版本的 Docker CE 请使用以下命令:

1
2
sudo yum-config-manager --enable docker-ce-edge
sudo yum-config-manager --enable docker-ce-test

安装 Docker CE

更新 yum 软件源缓存,并安装 docker-ce

1
2
sudo yum makecache fast
sudo yum install docker-ce

启动 Docker CE

1
2
sudo systemctl enable docker
sudo systemctl start docker

建立 docker 用户组

默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组

建立docker组:

1
sudo groupadd docker

将当前用户加入 docker

1
sudo usermod -aG docker $USER

镜像加速

鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,强烈建议安装 Docker 之后配置

配置方法如下(节选自gitbook《Docker——从入门到实践》):

Ubuntu 16.04+、Debian 8+、CentOS 7

对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)

1
2
3
4
5
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}

注意,一定要保证该文件符合json规范,否则Docker将不能启动

之后重新启动服务

1
2
sudo systemctl daemon-reload
sudo systemctl restart docker

检查加速器是否生效

配置加速器之后,如果拉取镜像仍然十分缓慢,请手动检查加速器配置是否生效,在命令行执行 docker info,如果从结果中看到了如下内容,说明配置成功

1
2
Registry Mirrors:
https://registry.docker-cn.com/

更多docker学习相关请查阅这里

本文参考

  1. 本文转载自博主【开始战斗】,如有侵权,请联系本人删除
  2. 部分内容参考GitBook《从入门到实践》

留言

⬆︎TOP