您的位置:首页 > 运维架构 > Docker

Centos 6.4中安装Docker

2016-10-21 10:35 726 查看
本文章来自【知识林】

如果没有Centos的操作系统可以安装虚拟机也可以直接在Windows8.1以上的操作系统中安装使用Docker,可参照文档《Windows 8 安装Docker

### 查看系统版本,命令:
lsb_release -a


[root@localhost ~]# lsb_release -a
LSB Version:    :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description:    CentOS release 6.4 (Final)
Release:        6.4
Codename:       Final


可以看出是64位的CentOs 6.4版本的操作系统

### 查看内核,命令:
uname -a


[root@localhost ~]# uname -a
Linux localhost 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux


可以看出内核版本是2.6.32的,由于Docker是一门较新的技术,所以对系统的要求也是比较新的,Docker需要在内核版本至少在3.0以后的版本中运行,所以第一步工作则是升级Centos的内核版本。

### 依次使用以下命令升级Centos内核

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm yum -y --enablerepo=elrepo-kernel install kernel-lt


升级完成后可以在文件
/etc/grub.conf
看到内核为3.10.103的配置信息,使用命令
more /etc/grub.conf
即可查看:

……
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (3.10.103-1.el6.elrepo.x86_64)
root (hd0,0)
kernel /vmlinuz-3.10.103-1.el6.elrepo.x86_64 ro root=UUID=94dcb85c-81c7-45ec-a005-6b895f12961b rd_NO_LUKS  KEYBOARDTYPE=pc KEYTAB
LE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet
initrd /initramfs-3.10.103-1.el6.elrepo.x86_64.img
title CentOS (2.6.32-358.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-358.el6.x86_64 ro root=UUID=94dcb85c-81c7-45ec-a005-6b895f12961b rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us r
d_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-358.el6.x86_64.img


在这个配置文件中可以看到有两个内桥版本,第一个(下标为0)版本为3.10.103,也就是刚刚升级所产生的,第二个(下标为1)版本为2.6.32,这是系统原生的内桥版本,但可以看到上面有
default 1
,即表示系统默认使用下标为1的内核,所以我们只用将
default 1
修改为
default 0
即可。修改后保存退出并重启即可使用高版本的内核启动操作系统(重启系统命令:
reboot
)。

### 查看升级情况,命令:
uname -a


[root@localhost ~]# uname -a
Linux localhost 3.10.103-1.el6.elrepo.x86_64 #1 SMP Sun Aug 28 16:41:49 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux


可以看出现在的内核版本已经是3.10.103版本的了。

### 更新几个工具

依次输入以下命令:

yum clean all
yum update glibc* yum* rpm* python*
yum update


安装过程中需要根据提示输入几次
y
以确定升级,完成后输入命令
reboot
重启服务器。

### 安装Docker

Docker官方网站 中可以找到相应的安装说明,上面讲述了两种安装方法:

Install with yum
:这个方法主要对Centos7以上版本使用。

Install with the script
:使用脚本方式安装Docker

使用命令
curl -fsSL https://get.docker.com/ | sh
安装Docker

[root@localhost ~]# curl -fsSL https://get.docker.com/ | sh
+ sh -c 'sleep 3; yum -y -q install docker-engine'
warning: rpmts_HdrFromFdno: Header V4 RSA/SHA1 Signature, key ID 2c52609d: NOKEY
Importing GPG key 0x2C52609D:
Userid: "Docker Release Tool (releasedocker) <docker@docker.com>"
From  : https://yum.dockerproject.org/gpg 
If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:

sudo usermod -aG docker your-user

Remember that you will have to log out and back in for this to take effect!


这里有提示:
sudo usermod -aG docker your-user
需要修改一些用户的权限,我这里是使用的root用户,所以我可以使用以下命令修改:

sudo usermod -aG docker root


安装完成后输入
docker --version
查看Docker的版本:

[root@localhost ~]# docker --version
Docker version 1.7.1, build 786b29d


#### 查看Docker的镜像

命令:
docker images
看到:

[root@localhost ~]# docker images
Cannot connect to the Docker daemon. Is 'docker -d' running on this host?


表示Docker服务未启动,
service docker start
启动Docker服务,但再运行
docker images
时还是出现上面的提示,可以使用
service docker status
查看Docker的服务状态:

[root@localhost ~]# service docker status
docker 已死,但 pid 文件仍存


说明Docker无法在该系统是正常启动,需要去此操作系统升级。

### 升级Centos到6.8

报着猜测的心态,假设Docker无法在Centos6.4版本中运行,那么先将Centos升级到较高版本。

再次执行
yum update
,将会升级操作系统(又是一个漫长的等待),此过程根据网速决定更新的速度,我花了差不多1小时的时间来更新,更新完成后可以通过命令
lsb_release -a
验证:

[root@localhost ~]# lsb_release -a
LSB Version:    :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description:    CentOS release 6.8 (Final)
Release:        6.8
Codename:       Final


出现上面信息则说明系统已经从6.4升级到6.8了,此时可以启动Docker服务:

[root@localhost ~]# service docker start
Starting docker:                                           [确定]
[root@localhost ~]# service docker status
docker (pid  22546) 正在运行...


现在再使用Docker的相关命令就不再会出现烦人的无法连接Docker提示信息了!

注意:

Centos 可以较方便的从6.4升级到6.8版本,且数据不会丢失。

从上面这个例子可以看出,Docker无法在Centos6.4版本中运行,其支持的最低版本是Centos6.8(这个不太确定,但需要将系统升级到6.8才能启动Docker服务)。

在Centos6版本中只能安装Docker 1.7.1版本,即使使用
yum update docker
也无法升级Docker版本,要安装更高版本的Docker则需要升级Centos到7以上。

本文章来自【知识林】
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  centos docker