从`docker`升级到`docker-ce`时,我可以保存正在运行的容器吗?

我有一个CentOS 7盒子,默认的Docker 1.12包( docker )运行着大约十几个容器。 我想根据这些说明升级到他们的仓库中提供的最新的Docker包( docker-ce )。

但是,我必须先卸载docker软件包。 这会垃圾我的运行容器? 如果是的话,是否有避免这种情况?

实际上,Docker 1.12(仅仅是你的情况)就是从live-restore

https://docs.docker.com/engine/admin/live-restore/#enable-the-live-restore-option

从Docker Engine 1.12开始,您可以configuration守护进程,以便在守护进程不可用时容器保持运行状态。 实时还原选项有助于减less由于守护程序崩溃,计划中断或升级而导致的容器停机时间。

要启用它,用这个更新daemon.json

 { "live-restore": true } 

然后,你只需发送一个SIGHUP到docker引擎。

为了以防万一,请确保做好所有必要的备份。