centos7安裝最新版docker-ce
阿新 • • 發佈:2019-02-02
1. 前提
- yum源中的centos-extras repository必須開啟(enable)
- 建議使用overlay2儲存驅動
2. 解除安裝舊版本
舊版本的docker叫做docker或docker-engine,新版本的docker-CE包叫做docker-ce。如果你的主機上安裝了docker或docker-engine,請先解除安裝它們。
# yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
# rm -rf /var/lib/docker/
如果yum報告“No Packages marked for removal”,那就ok。目錄/var/lib/docker/下,包含了images, containers, volumes, 和networks,需要一併刪除。至此,docker完全被解除安裝。
3. 安裝docker-ce
3.1 使用repository安裝(推薦)
- 安裝依賴包
# yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
- 設定stable repository
# yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 檢視可用版本的docker-ce
# yum list docker-ce --showduplicates | sort -r
- 安裝指定版本的docker-ce
從上述安裝列表中,安裝docker-ce
// 例如,yum install docker-ce-18.03.0.ce
# yum install docker-ce-<VERSION STRING>
- 啟動docker
# systemctl start docker
- 驗證docker正常安裝
# docker run hello-world
- 升級docker-ce
直接安裝指定版本的docker-ce,即可完成版本升級。
3.2 使用rpm包,離線安裝(無網際網路條件下安裝)
- 下載安裝包
- 安裝docker-ce
# yum -y install /path/to/package.rpm
- 啟動docker-ce
# systemctl start docker
- 驗證docker-ce
# docker run hello-world
- 升級docker-ce
# yum -y upgrade /path/to/package.rpm
3.3 自動化指令碼安裝(開發測試環境用)
# curl -fsSL get.docker.com -o get-docker.sh
# ./get-docker.sh
<output truncated>
If you would like to use Docker as a non-root user, you should nowconsider adding your user to the "docker" group with something like: sudo usermod -aG docker your-user
Remember to log out and back in for this to take effect!
WARNING: Adding a user to the "docker" group grants the ability torun containers which can be used to obtain root privileges on the docker host.Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface for more information.
4. 解除安裝docker-ce
# yum remove docker-ce
// 刪除images, containers, volumes,networks
# rm -rf /var/lib/docker
然後,你需要手動刪除docker-ce配置檔案。