在特定環境中安裝指定版本的Docker
通常用官方提供的安裝指令碼或軟體源安裝都是安裝的比較新 Docker 版本,有時我們需要在一些特定環境的伺服器上安裝指定版本的 Docker。今天我們就來講一講如何安裝指定版本的 Docker 。
通過手動安裝
增加軟體安裝源
- Ubuntu
匯入軟體倉庫證書
$ apt-key adv –keyserver hkp://pgp.mit.edu:80 –recv-keys 58118E89F3A912897C070ADBF76221572C52609D
新增一個 docker.list 檔案,在其中增加對應的軟體安裝源。
# Ubuntu Precise
deb https://apt.dockerproject.org/repo ubuntu-precise main# Ubuntu Trusty
deb https://apt.dockerproject.org/repo ubuntu-trusty main# Ubuntu Xenial
deb https://apt.dockerproject.org/repo ubuntu-xenial main
以 Ubuntu 16.04 為例:
$ vim /etc/apt/sources.list.d/docker.list
deb https://apt.dockerproject.org/repo ubuntu-xenial main
- CentOS
新增一個 docker.repo 檔案,在其中增加對應的軟體安裝源。 這裡以 CentOS 7 為例:
$ cat >/etc/yum.repos.d/docker.repo <<EOF
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF
更新軟體源
- Ubuntu
$ apt-get update
- CentOS
$ yum makecache
顯示軟體源中所有Docker軟體包安裝資訊
- Ubuntu
$ apt-cache policy docker-engine
docker-engine:
Installed: (none)
Candidate: 17.05.0~ce-0~ubuntu-xenial
Version table:
17.05.0~ce-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
17.04.0~ce-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
17.03.1~ce-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
17.03.0~ce-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.13.1-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.13.0-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.6-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.5-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.4-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.3-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.2-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.1-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.0-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.11.2-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.11.1-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.11.0-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
- CentOS
$ yum provides docker-engine
移除其它版本Docker
如果之前存在其它版本的Docker,可以使用以下命令先移出:
- Ubuntu
$ apt-get purge docker-engine
- CentOS
$ yum remove docker-engine
安裝指定版本Docker
根據實際情況,選定要安裝的 Docker 版本進行安裝。這裡以安裝 1.13.1 版本為例:
- Ubuntu
如果 Ubuntu 為 14.04 建議先裝上以下兩個軟體包。
$ apt-get install \
linux-image-extra-$(uname -r) \
linux-image-extra-virtual$ apt-get install docker-engine=1.13.1-0~ubuntu-xenial
- CentOS
$ yum install docker-engine-1.13.1-1.el7.centos.x86_64
驗證Docker版本
$ docker -v
Docker version 1.13.1, build 092cba3
通過指令碼一鍵安裝
如果覺得手動安裝太過複雜,也可以直接使用下面的指令碼一鍵安裝:
$ curl -sSL https://github.com/gitlawr/install-docker/blob/1.0/.sh?raw=true | sh
或者:
$ wget -qO- https://github.com/gitlawr/install-docker/blob/1.0/.sh?raw=true | sh
使用需要的 Docker 版本替換以下指令碼中的 ,目前該指令碼支援的 Docker 版本:
1.10.3
1.11.2
1.12.1
1.12.2
1.12.3
1.12.4
1.12.5
1.12.6
1.13.0
1.13.1
17.03.0
17.03.1
17.04.0
注:指令碼使用 USTC 的軟體包倉庫,已基於 Ubuntu_Xenial , CentOS7 以及 Debian_Jessie 完成測試。指令碼會根據 Linux 發行版有少許區別,比如 Ubuntu 16.04 下不相容 Docker-1.10.3。
這裡以安裝 1.13.1 為例:
原文來自微信公眾號:運維之美,參考文件:
http://www.google.com
http://www.cnblogs.com/yanghuahui/p/4874937.html
https://blog.phpgao.com/docker_install_specific_version.html