【发布时间】:2017-05-18 13:55:01
【问题描述】:
我们有一个在 PHP5 中运行的应用程序(带有 MongoDB 的 Symfony 2.8),但是我们在这个版本中的 Mongo 驱动程序存在问题,而 PHP7 和 ext-mongodb 则没有。所以我正在尝试将项目迁移到 PHP7。
在本地一切正常,但在 Bluemix 上我们遇到了这个问题:
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested PHP extension ext-mongodb ^1.2 has the wrong version (1.1.2) installed. Install or enable PHP's mongodb extension.
...
某些依赖项需要此扩展和版本,但我无法通过 composer 安装它。依赖在 composer.json 中是明确的:
"require": {
"php": "7.0.*",
"ext-mongodb": "*",
...
我去了 php-buildpack 项目,看看在 php-buildpack 4.3.10 中提供的扩展版本是什么(这是 Bluemix 当前使用的版本,它是旧的!!!!),但是没有版本,只是对可用扩展的说明:
https://github.com/cloudfoundry/php-buildpack/releases/tag/v4.3.10
如何获取 ext-mongodb 的 1.2.0 版本?
谢谢!
【问题讨论】:
-
可以使用更新版本的 buildpack。在您的 cf push 中,您指定 buildpack URL,例如
-b https://github.com/cloudfoundry/php-buildpack.git#v4.3.33。 -
您好,自从我发布问题以来,这就是我正在做的事情,但是我对使用社区版本并不放心。如果这是唯一的解决方案,我会选择它。但是,同一个应用程序不适用于 4.3.33 版本的 buildpack,并且没有日志知道会发生什么......
标签: php mongodb composer-php ibm-cloud cloud-foundry