在CentOS 7上升级docker

在CentOS 7上升级docker,centos,docker,centos7,Centos,Docker,Centos7,我正在运行centos 7,并使用epel软件包在主机上安装了docker: yum install epel-release yum install docker 但是docker版本是-docker版本0.11.1-dev,build 02d20af/0.11.1 docker的最新稳定分支是1.2 我在这个主机上运行了几个容器,那么如何在这个主机上安全地更新docker呢 yum update docker不会更新到最新版本,因为epel repo有旧的包。请注意,docker的当前稳定

我正在运行centos 7,并使用epel软件包在主机上安装了docker:

yum install epel-release
yum install docker
但是docker版本是-
docker版本0.11.1-dev,build 02d20af/0.11.1

docker的最新稳定分支是1.2

我在这个主机上运行了几个容器,那么如何在这个主机上安全地更新docker呢

yum update docker不会更新到最新版本,因为epel repo有旧的包。

请注意,docker的当前稳定版本实际上是1.3,而不是1.2。请参阅以查找最新版本

在升级docker主机之前,您可能需要备份一些docker映像,尤其是从
docker commit
命令发出的映像。要执行此操作,请查看命令。 您可能还希望备份容器的卷。关于这一点,请看一下

一旦您确信您拥有了最终重新开始所需的所有备份,您就可以继续升级Docker守护程序了

在上,如果需要最新版本,建议从安装docker。我建议您按照这些说明安装最新的dockerDocker现在通过
yum
软件包管理器提供更新。

完成后,使用
docker images
命令验证是否仍有docker图像,并使用
docker ps
检查容器。如果缺少一些,请从备份中重新创建它们

如果从自定义docker文件创建docker映像,还需要重新生成这些映像,以检查docker文件是否与新docker守护程序有任何问题。Docker 0.11.1和1.3之间存在差异,Dockerfiles语法中引入了修复和新功能


以下是准备好升级docker后要运行的命令的详细信息:

# 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
更新以升级docker CentOS 7.4 参考:
摘自Docker文档:

要升级Docker Engine-Community,请按照安装说明,选择要安装的新版本

链接到安装步骤:

尝试以下命令:

# stop docker before upgrade
$ sudo service docker stop

$ sudo yum upgrade docker*

# start it again
$ sudo service docker start

# check the version
$ sudo docker version

如果我卸载docker(通过yum安装的docker),图像还会存在吗?它们会被清除吗?我可以在CentOS 7上升级docker,而不会丢失图像或容器。我用我用来升级docker的命令编辑了我的答案。请注意,您仍然需要备份,以防遇到困难。警告!!这个答案摧毁了CentOS上的Docker!最新的文件是404错误!不要用它!谢谢你提醒我!我编辑了我的答案,以便现在可以使用
yum完成升级。我同意您的看法。。这已经在我的服务器上销毁docker。下面是关于如何在CentOS 7上安装docker 1.5的另一个答案:如果您不确定,请不要使用此说明。如果在
yum安装docker-ce
step:Package:docker-ce-18.06.0.ce-3.el7.x86_64(docker-ce-stable)上出现错误,则可能会丢失dockerRequires:container selinux>=2.9这是我刚才运行的命令,它似乎起了作用:
yum update docker ce docker ce cli containerd.io
这对我起作用,而接受的答案不起作用谢谢,这对我起作用了!
# stop docker before upgrade
$ sudo service docker stop

$ sudo yum upgrade docker*

# start it again
$ sudo service docker start

# check the version
$ sudo docker version