有时由于工作环境是在centos6下,然而也想使用docker,笔者曾经就遇到过这样的需求。一般docker都是部署在centos7依然的系统中的,centos6下就比较棘手了。
其实在centos6下也是可以安装的,只是有点不太一样 下面就来看看吧
首先我们要知道的是,我们在centos6下安装的docker不是docker-ce ,而是docker-io
#1 升级内核 ,重启机器
# centos6.5自带的内核,docker容易崩溃不稳定。
# 升级内核后就正常了
yum install kernel -y
reboot
#2 安装epel yum源(可选)
rpm -ivh http://mirrors.163.com/centos/6/extras/x86_64/Packages/epel-release-6-8.noarch.rpm
yum makecache fast
#3 安装docker-io
#如果找不到包,就执行第二步
yum upgrade device-mapper-libs #这个也一定要执行
yum install docker-io
恭喜你, 你的docker已经安装完毕啦
------------------------------ 华丽的分割线------------------------------------
问答环节
Q1: # 执行docker images报错如下
Get http:///var/run/docker.sock/v1.19/images/json: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS?
解决: yum upgrade device-mapper-libs
Q2:启动时执行service docker start发现启动失败
排查:此时尝试手动/usr/bin/docker -d,报错如下
INFO[0000] +job serveapi(unix:///var/run/docker.sock)
INFO[0000] WARNING: You are running linux kernel version 2.6.32-431.3.1.el6.x86_64, which might be unstable running docker. Please upgrade your kernel to 3.8.0.
INFO[0000] Listening for HTTP on unix (/var/run/docker.sock)
/usr/bin/docker: relocation error: /usr/bin/docker: symbol dm_task_get_info_with_deferred_remove, version Base not defined in file libdevmapper.so.1.02 with link time reference
解决: yum upgrade device-mapper-libs
网友评论