如何在 Debian 8.6 中管理同一软件的多个版本?

如何在 Debian 8.6 中管理同一软件的多个版本?

我加入一家新公司后,尝试设置一个合理的开发环境,该公司的项目运行在 3 个不同的 PHP 版本上,而不使用 VM(如 Vagrant)或容器。我真的讨厌这些解决方案。

由于我基本上是 Linux 新手,我不知道如何正确地做到这一点。我已经设置了一些 bash 脚本,这些脚本可以对事物进行别名处理,并且它可以工作,但我怀疑这是否是处理事物的最佳方式,我很确定一些包管理器提供了一个很好的解决方案。

我需要安装 3 个 PHP 版本:5.6、7.0 和 7.1。我所做的是对每个版本进行自定义编译,并制作一个小脚本,将我的 /usr/bin/php 别名化为不同的文件夹。我将我的脚本称为:select-php 7.1它将一堆东西别名化为正确的 7.1 文件夹。

有没有一个包管理器可以帮助你以更好的方式做到这一点?我很确定我的解决方案很快就会适得其反。

答案1

现在我们有很多种*brew脚本。你可以尝试phpbrew https://github.com/phpbrew/phpbrew适用于不同的 PHP 版本。

答案2

常见发行版中将有适用于各种 PHP 版本的第三方软件包。这样做的好处是其他人使用这些版本,也许能够提供帮助。在 Debian 上,一个相当受欢迎的存储库是 https://www.dotdeb.org/

版本之间的切换可能会很棘手,尤其是在 Web 服务器集成方面。即使软件包没有直接冲突,运行这两个版本时也可能会遇到问题。

因此,请准备好启动每个版本的虚拟机或容器。有很多方法可以做到这一点。如果您没有从空白主机自动创建可重现的构建环境的方法,那么您可能应该探索类似的东西。

相关内容