2014-10-20 91 views
16

我運行CentOS的7,並且已安裝使用的主機EPEL包泊塢窗:在CentOS升級泊塢窗7

yum install epel-release 
yum install docker 

但泊塢窗版本是 - Docker version 0.11.1-dev, build 02d20af/0.11.1

泊塢窗最新的穩定分支是1.2

我正在這臺主機上運行幾個容器,所以我如何在這臺主機上安全地更新docker?

yum update docker不會更新到最新版本,因爲epel repo具有舊包裝。

+0

這裏是關於如何在CentOS 7上安裝Docker 1.5的另一個答案: http://stackoverflow.com/questions/28961080/how-to-install-the-latest-version-of-docker-on-centos-7 – 2015-03-24 16:13:27

回答

31

請注意,當前Docker的穩定版本實際上是1.3,而不是1.2。查看Docker CHANGELOG發現最新版本。

在升級您的docker主機之前,您可能需要備份您擁有的一些docker映像,尤其是那些從docker commit命令發出的映像。爲此,請查看docker export命令。 您可能還想備份容器的卷。爲了看看Docker user guide on data volumes

一旦您確信自己擁有所有需要的備份以便最終重新開始,您可以繼續升級Docker守護程序。

關於Docker installation guide for CentOS 7,如果您需要最新版本,建議您安裝binaries的docker。我建議你按照這些說明來安裝最新的docker。Docker現在通過yum軟件包管理器提供更新。

一旦完成,使用docker images命令來驗證你是否仍然有你的Docker鏡像並且docker ps檢查你的容器。如果缺少某些內容,請從備份中重新創建它們。

如果您從自定義Dockerfiles創建了docker鏡像,還希望重新生成這些鏡像以檢查Dockerfile是否與新Docker守護程序有問題。 Docker 0.11.1和1.3之間有一個big gap,修復和新功能被引入Dockerfiles語法。


在細節這裏跑,一旦你準備升級泊塢窗命令:

# stop the docker service 
$ sudo service docker stop 

# download the latest docker binary and replace the current outdated docker 
# DEPRECATED WAY TO UPGRADE DOCKER: $ sudo wget https://get.docker.com/builds/Linux/x86_64/docker-latest -O /usr/bin/docker 
$ sudo yum update docker-engine 

# start the docker service 
$ sudo service docker start 

# check the version 
$ sudo docker version 

# check the images and containers 
$ sudo docker images 
$ sudo docker ps 
$ sudo docker ps -a 
+0

如果我卸載docker(通過yum安裝的)將圖像仍然存在將被清除? – NitishMD 2014-10-21 15:43:58

+2

我能夠在不丟失圖像或容器的情況下升級CentOS 7上的docker。我用我用來升級docker的命令編輯我的答案。請注意,如果遇到困難,您仍然需要備份。 – Thomasleveil 2014-10-22 07:52:51

+0

**警告!! **此答案在CentOS上銷燬Docker!最新的文件是404錯誤!不要使用它! – user6253329 2016-04-25 20:43:01

0

Update升級泊塢窗的CentOS 7.4

yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine 
yum install -y yum-utils device-mapper-persistent-data lvm2 
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 
yum install docker-ce 


systemctl start docker 
systemctl enable docker 
systemctl status docker 

參見:

https://docs.docker.com/install/linux/docker-ce/centos/