参考博客:Docker CE 镜像源站
参考博客:docker启动异常driver not supported

1. 为什么要安装指定版本docker说明

之前部署docker服务的时候都是安装最新的docker版本,并使用docker swarm部署大数据组件。

但是在近期的一次部署发现 docker 18.06.1 版本,在使用docker swarm部署大数据组件的时候namenode存储的datanode信息不正确。原因是 18.06.1 版本中的docker swarm 存在一个LB网络,造成了该问题。

这个问题对于Hadoop本身是没有任何问题的,但是当我们启动hbase的时候却有问题了。通过日志发现hbase找不到datanode的节点信息,因为hbase得到的是LB的IP而不是datanode本身的IP,最终导致hbase启动失败。

最后解决的方案就是docker版本回退到 17.09.0 版本,该版本不存在LB网络。Hadoop的namenode中存储的datanode信息是正确的。

相关信息如下:
[root@mini03 docker-swarm]# docker -v
Docker version 18.06.1-ce, build e68fc7a
[root@mini03 docker-swarm]# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
f28f7ab2d811        bridge              bridge              local
51c95dea1e5c        docker_gwbridge     bridge              local
7a7e31f4bce8        host                host                local
3cxch31bl38k        ingress             overlay             swarm
5ea08e9a282f        none                null                local
pwk7oy2h3gnp        zhang               overlay             swarm  # 自己创建的网络
[root@mini03 docker-swarm]# docker network inspect zhang
………………"Containers": {"a9e2e20c89bb6fbc2984a19c4c8e9f9500f3360f2b0434819fc31a143cbc7fc9": {"Name": "visualizer_visualizer.1.0lgaqosyogoy0edkqdakeycz4","EndpointID": "2cae08f3a1a63eadff6fee675e249ce19956dcc1d871329c90056a1829abc1d1","MacAddress": "02:42:0a:00:00:04","IPv4Address": "10.0.0.4/24","IPv6Address": ""},"lb-zhang": {"Name": "zhang-endpoint","EndpointID": "44ed04b5768dd4ae9edf2e63bded8d5ab5af7cb43d49a4d0d4fbd999abfd5373","MacAddress": "02:42:0a:00:00:02","IPv4Address": "10.0.0.2/24","IPv6Address": ""}},
………………

2. docker安装指定版本

# 安装必要的一些系统工具
[root@mini02 tools]# yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加软件源信息
[root@mini02 tools]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 查看可安装的版本信息
[root@mini02 tools]# yum makecache fast
[root@mini02 tools]# yum list docker-ce.x86_64 --showduplicates | sort -r
* updates: mirrors.aliyun.com
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror* extras: mirrors.aliyun.com* epel: mirrors.aliyun.com
docker-ce.x86_64            18.06.1.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.0.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.03.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.12.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.09.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.09.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.2.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.3.ce-1.el7                    docker-ce-stable
docker-ce.x86_64            17.03.2.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.0.ce-1.el7.centos             docker-ce-stable
# 安装指定版本的docker服务
[root@mini02 tools]# yum -y install docker-ce-17.09.0.ce-1.el7.centos
# 版本信息查看
[root@mini02 tools]# docker -v
Docker version 17.09.0-ce, build afdb6d4

3. 加入开机自启动

[root@mini02 tools]# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)Active: inactive (dead)Docs: https://docs.docker.com
………………
[root@mini02 tools]# systemctl enable docker.service  # 加入开机自启动
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

4. 问题解决

当启动 docker 服务出现问题时的解决方案

[root@mini02 tools]# systemctl start docker
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
[root@mini02 tools]# journalctl -xe  # 查询具体信息
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.service has begun starting up.
Nov 01 17:40:55 mini02 dockerd[2493]: time="2018-11-01T17:40:55.181209947+08:00" level=info msg="libcontainerd: new containerd process, pid: 2501"
Nov 01 17:40:56 mini02 dockerd[2493]: time="2018-11-01T17:40:56.187023899+08:00" level=error msg="[graphdriver] prior storage driver overlay2 failed: driver not supported"
Nov 01 17:40:56 mini02 dockerd[2493]: Error starting daemon: error initializing graphdriver: driver not supported
Nov 01 17:40:56 mini02 systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
Nov 01 17:40:56 mini02 systemd[1]: Failed to start Docker Application Container Engine.
-- Subject: Unit docker.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
………………
# 具体信息如下截图,解决方法如下,之后就可以正常起docker服务了
[root@mini02 tools]# mv /var/lib/docker /var/lib/docker.old

———————————————END———————————————

安装指定版本的docker服务相关推荐

  1. Linux安装指定版本的docker及添加国内镜像源

    一.安装指定版本docker 1. 下载deb文件 选择Ubuntu的deb文件 访问https://download.docker.com/linux/ubuntu/dists/ 来选择Ubuntu ...

  2. 安装指定版本docker

    之前我们演示的是安装默认最新的版本,但在实际应用中,我们往往不会安装最新的,一般都会安装一个比较稳定的版本,尽量低两三个版本的.我们先看看当前安装的是什么版本的docker. [root@localh ...

  3. docker 安装指定版本

    Centos安装: #安装依赖 yum install -y yum-utils device-mapper-persistent-data lvm2#添加docker源 yum-config-man ...

  4. centos 安装指定版本gc_番外篇 (1) Docker 安装

    # step 1: 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # Step 2: 添加软 ...

  5. centos+7.2+linux版本,在Linux Centos 7.2 上安装指定版本Docker。

    相关资料链接: 先清空下"历史" yum remove docker \ docker-common \ docker-selinux \ docker-engine 安装必要的包 ...

  6. Ubuntu16.04 安装指定版本docker ce

    卸载之前的旧版本 sudo apt-get remove docker docker-engine docker-ce docker.io 更新apt包索引 sudo apt-get update 安 ...

  7. linux安装指定mysql版本安装,linux yum安装指定版本mysql

    1.下载mysql rpm包 cd /usr/local/src wget https://dev.mysql.com/get/mysql80-community-release-el7-.noarc ...

  8. docker-machine为节点安装指定版本的docker-ce的思路

    对于指定版本的问题,翻遍官网文档和github上的issue,始终没有一个好的回答,而且该产品的开发人员不知道为什么总不正面提供方法,也许是为了推广新版本, 但是这样真的好吗?docker swarm ...

  9. Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本)...

    Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本) Hive 安装依赖 Hadoop 的集群,它是运行在 Hadoop 的基础上. 所以在安装 Hive 之 ...

最新文章

  1. 海南省长沈晓明:海南自贸区先导性项目取得阶段性进展
  2. mysql5717开发设置怎么调回来_华为手机这几个默认设置,一定要关闭,再也不卡顿...
  3. android theme 错误,为什么修改android:theme就崩溃,求助
  4. 【音视频安卓开发 (二)】
  5. Web Session和Cookie
  6. Ajax请求中async属性
  7. Internet Explorer无法下载
  8. Cookie与Session的区别-总结很好的文章
  9. js createelement_如何在vue中继续使用layer.js,亲测好用
  10. 开源H5棋牌 cocos creator微信棋牌小游戏 幼麟棋牌服务端分析笔记
  11. 【预测模型】基于遗传算法优化最小二乘支持向量机实现数据分类matlab代码
  12. 什么是等保(信息安全等级保护)?
  13. Android studio下的DNK开发JNI详解流程
  14. android开发教程 电驴资源下载地址分享
  15. 为什么使用线程池,解释下线程池参数
  16. QT 访问sqlite数据库
  17. 大数据量查询视图应用
  18. linux 【CPU性能】 系统中的软中断使用率升高怎么办?
  19. 凝思(linx)系统ntp服务
  20. Multisim基本电路仿真

热门文章

  1. Android 网卡修改
  2. 国外lead怎么快速入门
  3. Java开发两年挑战阿里P6,面试经历分享
  4. 文本编辑格式的 又一次进化 从 txt道md
  5. 大数据引领航天产业转入新业态
  6. C语言数据类型关键字
  7. 番外篇---如何添加论文中的文献引用右上角小标
  8. 网上花店java项目_网上花店Java源代码
  9. 京东AI战略全景浮出水面,在无界零售中扮演怎样的位置
  10. SQLSTATE[HY000] [1045] Access denied for user