【问题标题】:Private repo can't read with Git on composer installation on CentOS server在 CentOS 服务器上安装作曲家时,无法使用 Git 读取私有仓库
【发布时间】:2021-02-04 11:00:18
【问题描述】:

我正在尝试使用部署程序在我的 Laravel 应用程序中通过 Composer 安装一些私有存储库,我创建了我的 github SSH 别名并使用 ssh-add -k path-to-key 添加了我的密钥并将它们添加到个人私有存储库中,似乎服务器仍在努力访问这些,我的项目回购包括:

"repositories": [
    {
      "type": "vcs",
      "url": "git@my-alias:company/my-package.git"
    }
]

我的服务器上 Git 的 config 是...

Host my-alias github.com
Hostname github.com
IdentityFile /root/.ssh/my_package_id_rsa

我在那里有多个主机,上面只是 6 个主机之一。通过 Deployer 尝试 composer install 时的错误是...

错误:未找到存储库。

致命:无法从远程存储库读取。

请确保您拥有正确的访问权限

并且存储库存在。

当我在服务器上运行 ssh -T git@github.com 时,我得到:

嗨公司/我的包裹!您已成功通过身份验证,但 GitHub 不提供 shell 访问权限。

所以我会认为服务器能够读取我的 composer 文件并成功克隆 repo?

【问题讨论】:

    标签: git ssh composer-php php-deployer


    【解决方案1】:

    如果ssh -T git@github.com 在服务器上有效,则表示默认的~/.ssh/id_rsa 有效, /root/.ssh/my_package_id_rsa

    如果您想使用/root/.ssh/my_package_id_rsa 测试访问权限,您需要输入:

    sudo ssh -Tv my-alias
    

    sudo”因为否则 /root/.ssh 无论如何都无法访问。
    这意味着 ssh 配置文件必须在 /root/.ssh/config
    并且主机条目必须是my-alias。不是“my-alias github.com

    这也意味着composer install 必须作为root (sudo) 执行,这不是最佳做法。

    【讨论】:

      猜你喜欢
      • 2016-06-01
      • 1970-01-01
      • 2019-06-26
      • 2016-07-06
      • 1970-01-01
      • 1970-01-01
      • 2020-12-10
      • 1970-01-01
      • 2021-03-08
      相关资源
      最近更新 更多