在没有 /usr/local/bin/composer 的服务器上使用 EasyDeployBundle 托管 Symfony 4 应用程序

凯撒

对于 Symfony 4 应用程序,我选择了托管提供商OVH的 Web Cloud 计划

对于部署,我决定使用看起来非常有前途EasyDeployBundle这是我的配置文件:

<?php

use EasyCorp\Bundle\EasyDeployBundle\Deployer\DefaultDeployer;

return new class extends DefaultDeployer
{
    public function configure()
    {
        return $this->getConfigBuilder()
            ->server('ovh')
            ->deployDir('directory/path/at/server')
            ->repositoryUrl('[email protected]:foo/bar.git')
            ->repositoryBranch('master')
        ;
    }
}

我有.ssh/config以下条目的文件:

Host ovh
    Hostname sshcloud.foobar.hosting.ovh.net
    Port 12345
    User foobar

注意:所有值都是虚拟值,仅用于说明目的。

当我运行时:

php bin/console deploy --dry-run -v

一切正常,但是当我实际尝试部署时,出现以下错误:

命令“ssh ovh 'which /usr/local/bin/composer'”失败。

问题是我/usr/local/bin/对服务器上的目录没有写访问权限composer.phar是我的主目录,我不能将它移动到供应目的地。

有没有可能告诉在另一个目录中EasyDeployBundle寻找composer

凯撒

我真的应该阅读手册,特别是当我在我的问题中链接它们时。

有一种方法remoteComposerBinaryPath可以接受自定义路径到composer. 我已经修改了configure这样的方法

public function configure()
{
    return $this->getConfigBuilder()
        ->server('ovh')
        ->deployDir('directory/path/at/server')
        ->repositoryUrl('[email protected]:foo/bar.git')
        ->repositoryBranch('master')
        ->remoteComposerBinaryPath('composer.phar')
    ;
}

在我.bashrc在主文件夹中创建的服务器上并添加了以下行:

export PATH=$PATH:/home/foobar

现在部署正在通过这个障碍。

我现在有另一个问题,但至少这个问题已经解决了,也许答案也可以帮助其他人。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

IBM是否有可用于托管Worklight服务器/应用程序的云托管服务?

如何使用托管在Azure上Web App的一个Symfony的4应用程序获取客户端IP

如何在可能没有托管配置提供程序的应用程序中使用托管配置?

使用 GCP 托管的 django 应用程序上的服务器错误

HTTP错误500.19-托管Angular 4应用程序后出现内部服务器错误

http服务器的责任与使用此服务器托管的Web应用程序的责任

使用Symfony 4,每个项目存储库中有多个应用程序

用于托管 NodeJs 应用程序的 Nginx 服务器

构建服务器以在本地托管 rails 应用程序

在Linux服务器上托管MVC应用程序

是否可以在没有IIS(不是Web API)的情况下自托管MVC 4应用程序?

在没有互联网连接的 Windows 服务器上托管静态反应应用程序的最佳方法是什么

如何在私有服务器中使用gitlab-ci自动部署symfony应用程序?

在托管在云上的Laravel应用程序上配置缓存服务器

托管没有 ssl 证书的 blazor Web 应用程序

适用于托管在我自己的服务器上的应用程序的应用程序见解

SLIM 错误 :: 当 SLIM 应用程序托管在服务器上时找不到 AuthController

Skype for Business 2015 受信任应用程序托管在独立服务器上?

FoundationDB,层:它托管在客户端应用程序或服务器节点上吗?

内部专用IP服务器上的ReactJS,Express应用程序自托管

托管在不同服务器上的两个Python应用程序如何通信?

没有服务器的Web应用程序

没有服务器的NodeJS桌面应用程序?

没有服务器的简单消息应用程序

移动应用程序的存储托管服务?

在共享主机上托管在Laravel 4上运行的两个不同的应用程序

仅使用UDP托管小型服务器应用程序的缺点是什么?

使用MySQL和托管服务器的AngularJS / Ionic应用程序?

使用基本URL在Web服务器上托管Polymer应用程序