CentOS7.2離線安裝docker-ce最新版
公司有幾臺未聯網的伺服器需要安裝docker-ce做測試用,但是如果直接下載docker-ce的rpm包安裝的話會缺少各種依賴,一個個安裝依賴過程確實非常淡疼。如果快速的離線安裝docker-ce最新版哪?經過摸索,發現配置本地yum源可以解決這個問題。本文將闡述在CentOS7.2下,通過配置本地yum源,離線安裝docker-ce最新版(在寫本部落格時,docker-ce的最新版是docker-ce-x86_64-17.06.0.ce)。
下載離線軟體包及依賴
首先找一臺能夠聯網的機器,配置docker-ce的yum倉庫,參考這篇部落格的安裝docker部分。
這一步的離線軟體包我已經下載好了,可以聯絡我獲取(
下載createrepo及依賴
createrepo軟體可以為本地yum庫生成索引。
建立yum/local資料夾
$ mkdir -p yum/local
下載createrepo軟體包及其依賴
repotrack -a x86_64 -p yum/local createrepo
下載libgudev1和systemd-sysv
下載libgudev1和systemd-sysv,是因為centos7.2的libgudev1和systemd-sysv依賴systemd-219-19.el7.x86_64,而docker-ce需要systemd-219-30el7.x86_64.
下載 libgudev1和systemd-sysv軟體包機器依賴
repotrack -a x86_64 -p yum/local libgudev1
repotrack -a x86_64 -p yum/local systemd-sysv
下載docker-ce及依賴
下載docker-ce軟體包機器依賴
repotrack -a x86_64 -p yum/local docker-ce
打包、上傳yum軟體
將yum資料夾打包docker-ce-yum.tgz
$ tar -zcvf docker-ce-yum.tgz yum/
拷貝到離線機器,並解壓
# tar -zxvf docker-ce-yum.tgz -C /root/
配置本地源
安裝createrepo
進入yum/local資料夾,安裝createrepo-0.9.9-26.el7.noarch.rpm
# rpm -ivh createrepo-0.9.9-26.el7.noarch.rpm
可能會提示deltarpm和python-deltarpm版本不夠,可以升級這些包
# rpm -Uvh deltarpm-3.6-3.el7.x86_64.rpm
# rpm -Uvh python-deltarpm-3.6-3.el7.x86_64.rpm
然後在安裝createrepo-0.9.9-26.el7.noarch.rpm,則可以安裝成功
配置本地原始檔
新增檔案/etc/yum.repos.d/CentOS-Local.repo,寫入一下內容
[Local]
name=Local Yum
baseurl=file:///root/yum/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enabled=1
生成yum源的索引及快取
# createrepo /root/yum
# yum makecache
此時,本地yum源則配置完成,現在就可以從本地源安裝docker-ce
安裝docker-ce
安裝docker-ce
# yum install docker-ce
這個過程中會自動升級版本不夠的軟體包,所以還是比較方便的。
測試
啟動docker服務
# systemctl start docker
測試
# docker version
則會列印一下docker的版本
Client:
Version: 17.06.0-ce
API version: 1.30
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 21:20:36 2017
OS/Arch: linux/amd64
Server:
Version: 17.06.0-ce
API version: 1.30 (minimum version 1.12)
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 21:21:56 2017
OS/Arch: linux/amd64
Experimental: false
配置普通使用者免sudo使用docker和配置國內docker源等,請參考。