2016-06-29 43 views
0

我建立使用Nginx的HHVM 3.13.1中,MySQL 5.5和4.0 phpMyAdmin的墨盒上Openshift测试应用程序。这是我在使用Composer和对Facebook的XHP-lib的依赖颠沛流离箱本地运行一个应用程序的工作。这是我目前composer.json使用HHVM和作曲家在openshift

{ 
    "require": 
    { 
     "php": ">5.4.0", 
     "hhvm": ">=3.6.6", 
     "facebook/xhp-lib": "2.x", 
     "nikic/fast-route": "dev-master" 
    } 
} 

有两个问题 - 第一,我的PHP版本不是最新不够,二是我不能运行作曲家安装使用HHVM守护像这样

hhvm composer install 

,因此,所有依赖的失败,一个消息,说“你是用PHP,而不是HHVM运行此”如果我明确地使用“作曲家安装”的命令,“HHVM:找不到命令”如果我实际尝试与HHVM运行它。

这是我使用的部署后挂机,你可以看到它真的只是尝试下载并安装作曲:

#!/bin/bash 

export MY_PHPCOMPOSER=$OPENSHIFT_DATA_DIR/composer.phar 

# if composer not exists, download 
if [ ! -f $MY_PHPCOMPOSER ]; then 
    cd $OPENSHIFT_DATA_DIR 
    echo "Downloading composer..." 
    curl -s https://getcomposer.org/installer | php -- --install- dir=$OPENSHIFT_DATA_DIR 
fi 

$MY_PHPCOMPOSER -n -q self-update 
cd $OPENSHIFT_REPO_DIR 
# install 
$MY_PHPCOMPOSER install 

因此,这里是我的问题: 如何运行作曲家下openshift HHVM这样我就可以使用XHP和 如何在openshift升级我的PHP版本?

回答

0

>我怎样才能在openshift下HHVM运行作曲家?

从脚本或命令行运行HHVM看起来有点复杂。

首先,hhvm二进制文件和依赖库位于~/nginx-hhvm/usr/bin,并且有一个hhvm配置文件~/app-root/runtime/repo/config/hhvm.d/config.ini

所以运行HHVM,让我们组成:

LD_LIBRARY_PATH=$OPENSHIFT_PHP_DIR/usr/bin \ 
    $OPENSHIFT_PHP_DIR/usr/bin/hhvm -c \ 
     ~/app-root/runtime/repo/config/hhvm.d/config.ini` \ 
     $OPENSHIFT_DATA_DIR/composer.phar 

>如何升级我的openshift PHP版本?

呃,不容易,你必须自己建造它,或者建立/使用一个新版本的墨盒。