php – 如何在Openshift上运行(或者我应该运行)Composer?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – 如何在Openshift上运行(或者我应该运行)Composer?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1722字,纯文字阅读大概需要3分钟。
内容图文
![php – 如何在Openshift上运行(或者我应该运行)Composer?](/upload/InfoBanner/zyjiaocheng/805/722a7b7493634ebfa97b4a6ec8b5841e.jpg)
我试图在Openshift上创建ZendFramework的Skeleton应用程序.我使用这些instructions创建了一个PHP5应用程序并在本地克隆它.我在存储库中克隆了ZendFramework框架应用程序,然后运行Composer以在本地安装依赖项.
然后我将我的存储库推送到Openshift,但是我收到以下错误消息:
Fatal error: Uncaught exception 'RuntimeException' with message
'Unable to load ZF2. Run `php composer.phar install`
or define a ZF2_PATH environment variable.' in
/var/lib/openshift/559d4d8f500446844700002b/app-
root/runtime/repo/init_autoloader.php:51 Stack trace: #0
/var/lib/openshift/559d4d8f500446844700002b/app-
root/runtime/repo/public/index.php(18): require() #1 {main} thrown in
/var/lib/openshift/559d4d8f500446844700002b/app-
root/runtime/repo/init_autoloader.php on line 51
这表明我需要在Openshift上运行Composer.我该如何实现这一目标?
在我的本地存储库中,/ vendor目录中填充了依赖项目录.但是,在提交中忽略/ vendor.我可以尝试提交并推送它,但这是正确的方法吗?它看起来不干净.
解决方法:
基本上,您需要在OpenShift上自动执行每个构建的composer安装.
您可以通过在文件夹.openshift / markers中添加名为use_composer的标记文件来完成此操作.
.openshift /标记/ use_composer
参考:https://developers.openshift.com/en/php-markers.html
如果你需要做的不仅仅是作曲家安装,比如安装Composer,使用action_hooks是更好的选择.它们允许使用bash脚本.
见,https://developers.openshift.com/en/managing-action-hooks.html
.openshift / action_hooks /编译:
#!/bin/bash
export COMPOSER_HOME="$OPENSHIFT_DATA_DIR/.composer"
if [ ! -f "$OPENSHIFT_DATA_DIR/composer.phar" ]; then
curl -s https://getcomposer.org/installer | php -- --install-dir=$OPENSHIFT_DATA_DIR
else
php $OPENSHIFT_DATA_DIR/composer.phar self-update
fi
( unset GIT_DIR ; cd $OPENSHIFT_REPO_DIR ; php $OPENSHIFT_DATA_DIR/composer.phar install )
内容总结
以上是互联网集市为您收集整理的php – 如何在Openshift上运行(或者我应该运行)Composer?全部内容,希望文章能够帮你解决php – 如何在Openshift上运行(或者我应该运行)Composer?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。