使用 do-release-upgrade 将 Docker 中的 Ubuntu 从 14.04 升级到 16.04

1' *_* -- 4 upgrade do-release-upgrade docker

我刚刚设置了一个带有ubuntu:latest图像的 Docker 容器。根据/etc/lsb-releaseUbuntu 14.04 ,此图像是。现在我想将容器中的系统升级到 Ubuntu 16.04。因此,我已经安装了该update-manager-core软件包。但是,当我运行时do-release-upgrade,我只收到以下输出:

root@container:~# do-release-upgrade 
Checking for a new Ubuntu release
No new release found
Run Code Online (Sandbox Code Playgroud)

为什么这暂时不起作用?它会在某个时候起作用吗?将容器从 Ubuntu 版本 14.04 升级到 16.04 的最便捷方法是什么?除了使用 Ubuntu 16.04 创建新容器并将所有数据从旧容器复制到新容器之外,我还有其他可能吗?

Dag*_*elf 5

作为记录 - 从镜像中更新镜像不是 Docker 的最佳实践,建议您使用 Dockerfile 工作,您将使用该文件从更新的源启动一个新镜像,当它通过您的测试,然后停用旧映像。最终,您希望拥有无法从图像内更新的生产图像。然而,Docker 非常灵活,您可以随心所欲地使用它。

虽然上述内容可能看起来有些过头,但背后有一个原因:Docker 的主要目的是强制您的团队记录用于创建镜像的可重复指令,并强制他们从 Dockerfile 执行操作可确保您永远不会被设置它的开发人员的知识所束缚 - 并且您使用的是稳定的、更有信誉的来源。