【问题标题】:using hhvm and composer on openshift在 openshift 上使用 hhvm 和 composer
【发布时间】:2016-11-01 20:33:10
【问题描述】:

我正在使用 Nginx HHVM 3.13.1、MySQL 5.5 和 phpMyAdmin 4.0 盒式磁带在 Openshift 上构建一个测试应用程序。这是我在使用 Composer 并依赖于 Facebook 的 xhp-lib 的 vagrant box 本地运行的工作应用程序。这是我当前的 composer.json

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

有两个问题 - 首先,我的 PHP 版本不够最新,其次,我无法像这样使用 HHVM 守护进程运行 composer install

hhvm composer install

因此,如果我明确使用“composer install”作为命令,则所有依赖项都会失败并显示一条消息“您正在使用 PHP 而不是 HHVM 运行它”,如果我明确使用“hhvm: command not found”实际上尝试使用 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 下运行 composer,以便我可以使用 XHP,以及 如何在 openshift 中升级我的 PHP 版本?

【问题讨论】:

    标签: openshift hhvm hacklang xhp


    【解决方案1】:

    >如何在openshift的hhvm下运行composer?

    从脚本或命令行运行 HHVM 似乎有点复杂。

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

    所以要运行 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 版本?

    呃,不容易,您必须自己构建它,或者构建/使用更新版本的墨盒。

    【讨论】:

      猜你喜欢
      • 2014-06-21
      • 1970-01-01
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多