1. 程式人生 > >Linux下docker1.7.1安裝(yum安裝和離線安裝)

Linux下docker1.7.1安裝(yum安裝和離線安裝)

以下版本的CentOS 支援 Docker :

l CentOS 7 (64-bit)

l CentOS 6.5 (64-bit) or later

檢視系統版本指令

cat /etc/issue

1.docker 1.7.1安裝

這裡提供兩種安裝方式,yum安裝和離線安裝包安裝。

1.1 yum方式安裝

安裝epel

CentOS 內建的yum命令安裝非常的簡單實用,能自動幫助我們解決依賴,但centos內建的yum源可用的軟體偏少或者版本過低,通常我們需要使用一些第三方的yum源,這裡可以選擇安裝兩個比較常用和權威的yum源,epel或remi。這裡安裝epel

yum install -y epel-release

安裝docker

  • CentOS-7安裝docker

Docker 軟體包已經包含在預設的 CentOS-Extras 軟體源裡,安裝命令如下:

$ sudo yum install docker

  • CentOS-6.5安裝docker-io

在 CentOS-6 中,一個系統自帶的可執行的應用程式與 docker 包名字發生衝突,所以 我們重新命名 docker 的RPM包名字為 docker-io

yum install docker-io 


docker配置檔案所在路徑:/etc/sysconfig/docker

啟動docker

 # 加入開機啟動

$ sudochkconfig docker on

#開始執行 Docker daemon

$ sudoservice docker start 

#檢視狀態是否啟動成功

$ sudoservice docker status

1.2 離線安裝包安裝

上傳docker安裝包和所需依賴到伺服器目錄下。


分別執行以下指令進行依賴包安裝,最後安裝docker1.7.1

rpm -ivh libcgroup-0.40.rc1-23.el6.x86_64.rpm

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  

安裝device-mapper-libs,不安裝後面啟動docker會報錯(忽略依賴安裝)

rpm -ivh device-mapper-libs-1.02.117-12.el6.x86_64.rpm --force --nodeps

啟動docker

 # 加入開機啟動

$ sudo chkconfig docker on

#開始執行 Docker daemon

$ sudo service docker start 

#檢視狀態是否啟動成功

1.3 安裝問題

1. 啟動後檢視狀態發現未啟動成功,顯示docker dead

檢視docker的版本號,包括客戶端、服務端、依賴的Go顯示無法連線docker demo

解決:debug方式啟動一下docker發現報錯如下

應該是libmapper有關,需要升級下這個庫:

yum-config-manager --enable public_ol6_latest

yum install device-mapper-event-libs

重啟docker demo

$ sudo service docker restart

注意:CentOS firewall的底層是使用iptables進行資料過濾,建立在iptables之上,這可能會與Docker 產生衝突。當firewalld 啟動或者重啟的時候,將會從iptables 中移除DOCKER 的規則,從而影響了Docker 的正常工作。

當你使用的是 Systemd 的時候,firewalld 會在Docker 之前啟動,但是如果你 Docker啟動之後再啟動 或者重啟firewalld ,你就需要重啟Docker 程序了