我正在做一个项目,我将不得不部署大量带有特定软件的服务器。目前,我可以使用标准的 Ubuntu 存储库,但是这些存储库中的软件版本(v1.0)比开发人员提供的当前版本(v.1.5.6)要旧得多。这让我下载了源代码,然后在我打算发送出去的每台服务器上本地构建。构建这个特定的软件大约需要一个小时,所以我开始思考有更好的做事方式。
在谷歌搜索这样一个解决方案时,我看到有很多可能性,但我想让其他人了解我是否走在正确的道路上。如果我正确理解这一点,我可以创建一个包,然后将其放在 PPA(我相信它会公开可用)或我可以站起来的私人 repo 上。任何一种选择都可以,这不是我的软件,我只是在编译它并使其可供我自己和其他人使用。
我的理解是,只要我所有的服务器上都有相同版本的 Ubuntu、架构等,我可以将它们指向这个新资源并使用 aptitude 来安装软件,而不必经历痛苦(和时间) 的编译。
这通常正确吗?我是否过于简单化了?有没有更好的方法来达到同样的结果?
(来自这里的交叉帖子)
是的,编译 deb 包是您可以将单个构建安装到多个主机的方式。
分发和安装此软件包的许多方法,包括维护您自己的私有 apt 存储库。
如果是开源的,是的,您可以创建一个公共 PPA 并将其用作您的 apt 存储库。任何发行版都欢迎软件包维护者。