Docker For RHEL

RHEL 也是大力支持 Docker 的系统发行版, 但是由于 Docker 最开始使用的 AUFS 存储引擎在 RHEL 上并不支持, 所以 RHEL 自主研发了 device mapper 存储引擎专门适配自己的系统. 这个东西确实很牛 X, 但是实际用起来有多不爽恐怕只有用过才会知道吧.

最重要的是: Docker 官方声明, RHEL 7 不支持 Docker CE, 在 RHEL 系统上, 只能安装 Docker EE 版本, 所以本篇不做详细介绍

系统需求

  • 64bit RHEL7

卸载老版本 Docker Engine

老版本的 Docker 被叫做 dockerdocker-engine 如果系统当前有这些版本的系统, 那么你需要先卸载他们

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

需要 yum 命令的回显显示没有相关的软件包被安装

/var/lib/docker 目录下, 包含了镜像, 容器, 数据卷网络配置

安装 Docker EE

设置软件源

  • /etc/yum.repos.d/ 下清除所有跟 docker 相关的软件仓库配置
  • /etc/yum/vars/ 下创建两个变量
    • Docker EE 的 URL
1
$ sudo sh -c 'echo "<DOCKER-EE-URL>" > /etc/yum/vars/dockerurl'
- RHEL 的版本 
1
$ sudo sh -c 'echo "<VERSION-STRING>" > /etc/yum/vars/dockerosversion'
  • 安装 yum 工具集yum-utils 以得到 yum-config-manager命令
1
$ sudo yum install -y yum-utils
  • 配置软件源
1
2
3
$ sudo yum-config-manager \
--add-repo \
<DOCKER-EE-URL>/docker-ee.repo

安装 Docker EE

  • 更新 yum 软件源索引
1
$ sudo yum makecache fast
  • 安装 Docker EE
1
$ sudo yum -y install docker-ee
  • 启动 Docker EE
1
$ sudo systemctl start docker
  • 验证 Docker EE 正常运行
1
$ sudo docker run hello-world

参考官方文档: