Docker系列(一)CentOS 6.5 離線安裝、不升級內核


本特安裝教程特點

1、由於是離線下載,需要提前下載好需要的依賴包

2、使用的版本為Centos6.5

3、不升級內核

4、提供異常解決方案。

安裝過程

一、下載依賴包(使用能聯網的節點)

依賴包可以自己下載,也可以利用我下載的安裝包,鏈接: https://pan.baidu.com/s/1hr4xjrY 密碼: 4j7g

1.安裝downloadonly插件使用yum下載rpm

# yum install yum-plugin-downloadonly

 

使用方法:

yum install --downloadonly(只下載不安裝) --downloaddir=rpm包下載的目錄 安裝的組件名

2.下載docker需要的依賴包

2.1配置Fedora EPEL

# wget http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm

 

2.2 添加hop5.repo

# cd /etc/yum.repos.d 
# wget http://www.hop5.in/yum/el6/hop5.repo

2.3下載依賴包

# mkdir /usr/local/docker
# yum install --downloadonly --downloaddir=/usr/local/docker docker-io

 

這一步會報錯找不到對應的rpm;原因是對應的rpm包的版本號改變了,復制沒有下載的rpm包的包名(不帶版本號),進入下面的網址:

http://mirrors.aliyun.com/epel/6/x86_64/

找到對應的包名的rpm包,比如這里提示lxc-1.0.8-1.el6.x86_64.rpm包下載失敗,在上面的網址中找到lxc-1.0.9-1.el6.x86_64.rpm,復制鏈接地址,http://mirrors.aliyun.com/epel/6/x86_64/lxc-1.0.9-1.el6.x86_64.rpm

# cd /usr/local/docker
# wget http://mirrors.aliyun.com/epel/6/x86_64/lxc-1.0.9-1.el6.x86_64.rpm

就可以下載對應的包了

這一步下載的所有包截圖如下,放在docker目錄下,其中文件夾device-mapper-libs是下邊一步下載到rpm:

 

2.4下載device-mapper-libs,不下載后面啟動docker會報錯,下載網址:http://mirrors.aliyun.com/centos/6/os/x86_64/Packages/

# mkdir /usr/local/docker/device-mapper-libs
# yum install --downloadonly --downloaddir=/usr/local/docker/device-mapper-libs device-mapper-libs

 這一步下載到的lib截圖如下:

2.5 將整個docker目錄拷貝到需要安裝docker的離線的節點,可以放在/usr/local/src目錄下

二、安裝docker(離線節點)

1.安裝docker

如果執行rpm命令失敗,嘗試需要導入簽名:

[root@localhost rpm-gpg]# rpm --import http://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-6
[root@localhost rpm-gpg]# rpm –import /etc/pki/rpm-gpg/RPM*

依此執行docker下的安裝包:

# cd /usr/local/src/docker
# rpm -ivh lxc-libs-1.0.9-1.el6.x86_64.rpm
# rpm -ivh lua-alt-getopt-0.7.0-1.el6.noarch.rpm
# rpm -ivh lua-filesystem-1.4.2-1.el6.x86_64.rpm
# rpm -ivh lua-lxc-1.0.9-1.el6.x86_64.rpm    
# rpm -ivh lxc-1.0.9-1.el6.x86_64.rpm    
# rpm -ivh docker-io-1.7.1-2.el6.x86_64.rpm

 

2.運行docker -d命令報錯如下:

docker: relocation error: docker: symbol dm_task_get_info_with_deferred_remove, version Base not defined in file libdevmapper.so.1.02 with 
link time reference

 

2.1解決如下

 進入device-mapper-libs目錄,依此安裝所有包。

 

 方法一:

# cd /usr/local/src/docker/device-mapper-libs
# yum -y install device-mapper*
方法二:
# rpm -ivh  device-mapper***.rpm  –-force --nodeps

 務必保持lib為如下版本,否則解決不了異常。

 

 

3.再次運行docker -d命令,報錯如下:

FATA[0000] Error mounting devices cgroup: mountpoint for devices not found

3.1解決如下:

  找到cgroup目錄,然后對其進行掛載,我的安裝環境cgroup目錄在/cgroup

# vi /etc/fstab
#在結尾添加
none        /cgroup        cgroup        defaults    0    0
使之掛載生效
# mount -a

 

4.再次運行docker -d;放到后台運行

# mkidr /usr/local/docker
# cd /usr/local/docker
# nohup docker -d &
# tail -f nohup.out

 

如果沒有報錯信息,就說明安裝成功!

ps:

執行service docker restart報如下錯誤

enter image description here

(1) 檢查cgconfig的狀態

# /etc/init.d/cgconfig status

如果沒有啟動,執行如下命令:

# /etc/init.d/cgconfig restart

enter image description here

 

執行如下命令,看看是否ok:

# service docker restart

(2) check cgconfig is on

# chkconfig --list cgconfig

cgconfig 0:off 1:off 2:off 3:off 4:off 5:off 6:off

if cgconfig is off, turn it on

enter image description here

(3) if still does not work, may be some cgroups modules is missing. In the kernel .config file, make menuconfig, add those modules into kernel and recompile and reboot

after that, it should be OK

enter image description here


   好好玩你的docker吧!

借鑒於:http://www.jianshu.com/p/ead7385fb418


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM