docker-ce-18.03.1.ce-1.el7.centos.x86_64需要pigz這個依賴的解決方案

當我們在linux centos系統中安裝docker-ce-18.03.1.ce-1.el7.centos.x86_64時,有時可能會遇到「nothing provides pigz needed by docker-ce-18.03.1.ce-1.el7.centos.x86_64」的錯誤提示。這時我們需要解決pigz這個依賴關係。

一、安裝pigz

需要注意的是,pigz是gzip程序的並行版本,可提高壓縮速度。我們可以通過以下命令來安裝pigz:

yum install -y pigz

二、檢查軟件源是否正確

如果在安裝pigz時遇到問題,我們需要先檢查一下軟件源是否正確。我們可以通過以下命令來檢查:

yum repolist all

如果軟件源不正確,我們可以配置正確的軟件源。例如,我們可以使用阿里雲的鏡像源,可以用以下兩個命令實現:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache

三、使用rpm包手動安裝docker-ce

如果以上方法仍然無法解決問題,我們可以手動下載安裝docker-ce。以下是手動安裝docker-ce的步驟:

1、下載docker-ce的rpm包,這裡我們下載docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm:

wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm

2、下載及安裝依賴關係包

wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-cli-18.03.1.ce-1.el7.centos.x86_64.rpm
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.10-3.2.el7.x86_64.rpm

yum install -y pigz
yum install -y containerd.io-1.2.10-3.2.el7.x86_64.rpm docker-ce-cli-18.03.1.ce-1.el7.centos.x86_64.rpm docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm

四、修改docker-ce.rpm包

其實,我們也可以手動修改docker-ce.rpm包,以解決pigz依賴問題。以下是具體步驟:

1、使用以下命令下載docker-ce.rpm包:

wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm

2、安裝rpm-build工具

yum install -y rpm-build

3、創建rpm包目錄

mkdir ~/rpmbuild
cd ~/rpmbuild
mkdir -p BUILD RPMS SOURCES SPECS SRPMS

4、將docker-ce.rpm包放入SOURCES目錄

cd SOURCES
cp docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm ~/rpmbuild/SOURCES/

5、創建rpm包的spec文件

cd ..
cd SPECS
rpm -i ..//SOURCES/docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm
rpm -qpi ../SOURCES/docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm | awk '/^Name/ {print "mv "$2".rpm docker-ce.spec"}' | sh
cat docker-ce.spec | grep -v Requires | grep -v "Release: 1" > docker-ce-no-rel.spec

6、修改依賴關係

編輯docker-ce-no-rel.spec文件,將「%global _requires_exclude_from ^Requires(post):$」行下面添加以下內容:

Requires: pigz

7、重新打包rpm包

rpmbuild -bb docker-ce-no-rel.spec

8、安裝新生成的rpm包

cd ../RPMS/x86_64
yum install -y docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm

五、總結

通過上述的方法,我們可以解決docker-ce-18.03.1.ce-1.el7.centos.x86_64缺失pigz依賴的問題。

原創文章,作者:MVKYC,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/375528.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
MVKYC的頭像MVKYC
上一篇 2025-04-29 12:49
下一篇 2025-04-29 12:49

相關推薦

發表回復

登錄後才能評論