從 2017 年 3 月開始 docker 在原來的基礎上分為兩個分支版本: Docker CE 和 Docker EE。Docker CE 即社區免費版,Docker EE 即企業版,強調安全,但需付費使用。這里使用社區版。
- Docker官網地址:https://www.docker.com
- Docker軟件鏡像查詢地址:https://hub.docker.com/
- 國內鏡像站
如果使用超級管理員登錄,不需要在命令前加sudo
移除已安裝的docker(若沒有則跳過此步驟)
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
開始安裝
-
安裝必要的一些系統工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
-
添加軟件源信息(由於國內使用官網的太慢了,這里使用阿里的資源庫來加速)
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
-
更新 yum 緩存
sudo yum makecache
-
更新並安裝 Docker-CE
sudo yum -y install docker-ce
-
查看安裝版本
docker version
-
開啟Docker服務
sudo service docker start
安裝中遇到的containerd.io版本過低的問題
執行sudo yum -y install docker-ce
安裝docker命令時出錯,提示:containerd.io版本過低。具體如下:
Error:
Problem: package docker-ce-3:19.03.5-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed
- cannot install the best candidate for the job
- package containerd.io-1.2.10-3.2.el7.x86_64 is excluded
- package containerd.io-1.2.2-3.3.el7.x86_64 is excluded
- package containerd.io-1.2.2-3.el7.x86_64 is excluded
- package containerd.io-1.2.4-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.5-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.6-3.3.el7.x86_64 is excluded
-
單獨安裝 containerd.io
yum -y install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm、
之后重新執行sudo yum -y install docker-ce
安裝docker
安裝時出現下面的錯誤
Error: transaction check vs depsolve:
rpmlib(PayloadIsZstd) <= 5.4.18-1 is needed by containerd.io-1.2.10-3.2.fc31.x86_64
To diagnose the problem, try running: 'rpm -Va --nofiles --nodigest'.
You probably have corrupted RPMDB, running 'rpm --rebuilddb' might fix the issue.
這個是一般是版本依賴沖突,或者版本過高的問題,換為1.2.6-3.3版本即可