docker安装

最近想在服务器上安装升级新版本的docker遇到了一些问题,以下是docker安装笔记

 

一、服务器的要求

因为有些服务器Centos版本较低,导致安装docker的过程中出现一系列问题。Centos版本要求如下:

 

1.    官方说明:To run Docker, you will need CentOS6 or higher, with a kernel version 2.6.32-431 or higher as this has specific kernel fixes to allow Docker to run.

 

所以安装 docker需要Centos至少在6以上(我们的服务器还有不少是5.X的,所以装的有点悲剧。。。),内核需要>=2.6.32-431

查看服务器版本和内核有以下几种方式

  • cat /etc/redhat-release  , cat /proc/version

CentOS release 6.5 (Final)

  • lsb_release -a

LSB Version:    :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch
Distributor ID: CentOS
Description:    CentOS release 6.5 (Final)
Release:        6.5
Codename:       Final

  • uname -a

Linux testhadoop-slave2 2.6.32-431.11.2.el6.toa.2.x86_64 #1 SMP Wed Apr 9 15:55:33 CST 2014 x86_64 x86_64 x86_64 GNU/Linux

2.    升级docker到较新版本

CentOS 6 and RHEL 6 are no longer supported, and the last build for them is docker 1.7.1.

Docker runs on CentOS 7.X Docker requires a 64-bit installation regardless of your CentOS version. Also, your kernel must be 3.10 at minimum, which CentOS 7 runs.

因为想在持续集成工具(Jenkins)上启动docker,对docker版本有要求。所以希望在服务器上安装最新版本的docker。Google查到以上信息:对于CentOS 6.X的服务器,docker最高版本只能安装到1.7.1。所以需要至少CentOS 7.X,内核至少3.10以上的机器来安装运行较新版本的docker。因此想要用docker,服务器至少更新到CentOS 7.X。

 

二、另外有诡异报错

我在Jenkins持续集成中加入了启动docker容器的任务,报错:

Jenkins does not seem to be running inside a container
经查证较新版docker,需要服务器的 jdk在1.8以上。jdk安装教程很多,这里省略。

三、开始安装

第一种安装,安装指定版本的docker:

以安装docker-engine-1.10.3-1为例:
wget https://yum.dockerproject.org/repo/main/centos/7/Packages/docker-engine-1.10.3-1.el7.centos.x86_64.rpm
wget https://yum.dockerproject.org/repo/main/centos/7/Packages/docker-engine-selinux-1.10.3-1.el7.centos.noarch.rpm
yum localinstall -y docker-engine*
rm -f docker-engine-1.10.3-1.el7.centos.x86_64.rpm docker-engine-selinux-1.10.3-1.el7.centos.noarch.rpm
systemctl start docker
 

注释:上面的两个包是同时安装的(docker-engine*)。

遇到报错you can pass a flag to ignore obsoletes:(报错obsoletes),采用了以下方式安装,忽略obsoletes:

(\是连接符)

yum install -y --setopt=obsoletes=0 \
docker-engine-1.10.3-1.el7.centos.x86_64.rpm \

docker-engine-selinux-1.10.3-1.el7.centos.noarch.rpm

第二种安装

1)删除之前的安装

yum remove docker-engine*
yum remove docker-*

2)在CentOS 7上可以使用yum命令开始安装

yum install docker-engine   (对于CentOS 7适用)

安装docker的版本为:

docker version                  
Client:
 Version:      17.05.0-ce
 API version:  1.29
 Go version:   go1.7.5
 Git commit:   89658be
 Built:        Thu May  4 22:06:25 2017
 OS/Arch:      linux/amd64
Server:
 Version:      17.05.0-ce
 API version:  1.29 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   89658be
 Built:        Thu May  4 22:06:25 2017
 OS/Arch:      linux/amd64

 Experimental: false

安装完重启docker:systemctl start docker

四、我的yum源如下

cat /etc/yum.repos.d/docker.repo
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值