首页 > 技术文章 > 学习docker踩过的坑

wangzhu 2020-11-29 21:11 原文

0 引言

目前虚拟化技术大火,于是借机学习了docker,怎料过程并不顺风顺水,就有了以下遭遇。本机采用的虚拟环境是CentOS6。

1 遇到问题与解决方案

问题1: yum install docker-io不生效,提示No package docker-io available

解决方法:
按照网友的说法,先执行命令yum -y install epel-release,然后在执行命令yum -y install docker-io。但是,该方法试过了,本人并未成功
于是,找到了可用的解决方案:后面的划重点 使用rpm安装的方式执行docker软件的安装:yum install https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm,本人测试通过该命令安装成功

问题2:docker创建的最新版centos实例无法打开,报错提示FATAL: kernel too old(内核版本过旧)

解决方法:
方案:把Linux内核升级到最新版
查看内核:uname -r
你的Kernel输出可能是2.xx版本的,需要升级,操作步骤如下。
(1) 内核升级

# 更新nss(网络安全服务)
yum -y update nss
# 导入升级elrepo需要的yum源
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-6-8.el6.elrepo.noarch.rpm
# 安装elrepo内核
yum --enablerepo=elrepo-kernel -y install kernel-lt

(2) 修改内核启动项配置
还需要修改/etc/grub.conf文件,将default=1修改成default=0。原因是grub是CentOS的启动项配置文件,新添加了4.x.x内核的启动顺位是第一个,老版本2.x.x内核的启动顺位是第二个,按照0开始计数的顺序,需要把默认内核的启动项调至0。

(3) 重启系统
执行命令:sudo reboot,这样就可以在docker里愉快的玩耍了。

推荐阅读