git - 无法克隆源代码,因为 vsts 权限
问题描述
我正在尝试使用 vsts 将 Java 应用程序部署到容器中
这项工作将:
将 ssh 连接到 docker vm(使用 sudo 用户,而不是 root)
从 respestory 克隆代码(使用管理员帐户)
将代码放入 docker vm 的文件夹中,
生成战争文件
将war文件放在tomcat服务器容器下
ssh 连接到 docker vm 步骤后,我的 vsts 作业显示错误:
TF401019: The Git repository with name or identifier [Git Repository] does not exist or you do not have permissions for the operation you are attempting.
进入 docker VM,我也无法从 vsts 克隆项目(显示相同的错误),尽管我已经生成了一个公钥并将它们放入 vsts 服务器
有人对我做错了什么有想法吗?
当我sudo git clone @link to git repo
从 docker vm使用时
像这样的错误消息:
Your Git command did not succeed.
Details:
Public key authentication failed.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
解决方案
是的,您在生成公钥并将其放入 vsts 服务器(Azure DevOps)的正确方法似乎 Azure DevOps(VSTS)没有您的公共 SSH 密钥与 repo 一起使用。您可以在需要克隆存储库的 VM 上创建 SSH 密钥对。请打开 Git Bash 控制台工具(或只输入终端)并在下一个命令和您的 Azure DevOps 帐户电子邮件中创建 SSH 密钥:
ssh-keygen -C "jamal@fabrikam.com"
输入更改后的命令后,按ENTER将密钥保存在建议的文件中,如果已经存在 SSH 密钥文件,则输入y键覆盖。然后控制台将要求设置密码,只需按两次 ENTER 按钮使其为空。
下一步是读取公共 SSH 密钥并将其复制到 Azure DevOps 安全页面。此命令将输出公钥:
cat ~/.ssh/id_rsa.pub
然后选择并复制到剪贴板您的公钥(没有任何空格)。最后一步是将公钥添加到 Azure DevOps Services。这个链接会告诉你在哪里添加它。完成这些步骤后,您可以再次尝试使用源代码克隆存储库。
推荐阅读
- camera - Aframe 光标失真
- debugging - 在 Nucleo STM32 板上设置 SWV printf
- php - 如何解决 AndonisJs、XAMMP MySQL 错误
- google-cloud-composer - PythonOperator 任务挂起访问 Cloud Storage 并按 SCHEDULED 堆叠
- html - 输入类型文件 - 换行长文件名文本
- regex - perl 正则表达式中的 sub 何时停止
- python - Python BFS 没有给出最短路径
- c# - 如何将选定的列从 CSV 获取到我的 XML c#
- android - 滚动到最后一个位置 RecyclerView 时出现问题
- php - 循环复制自身的迭代