如何解决在CentOS服务器上的composer安装上,Git无法读取私有仓库
我正在尝试使用部署程序通过Composer在我的Laravel应用程序中安装一些私有存储库,我创建了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个主机之一。通过部署器尝试composer install
时的错误是...
错误:找不到存储库。
致命:无法从远程存储库读取。
请确保您具有正确的访问权限
并且存储库存在。
当我在服务器上运行ssh -T git@github.com
时,我得到:
您好,公司/我的包裹!您已经成功通过身份验证,但是GitHub不提供shell访问。
所以我以为服务器将能够读取我的作曲者文件并成功克隆存储库?
解决方法
如果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
)的身份执行,这不是最佳实践。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。