我已经下载了官方的docker jenkins镜像并为Jenkins安装了Git+GitHub插件。
在凭证菜单中,我添加了常规 GitHub 用户的公钥(没有生成新密钥),并在构建配置中指定了 git url。不幸的是,我收到了来自 GitHub 的权限被拒绝(公钥)的提示。
因此,我尝试使用我的 GitHub 登录名改为 HTTPS URL,以确保与 GitHub 的连接没有问题。这样就可以正常工作了,但我不明白是否需要在容器中设置 SSH 密钥,这是否可行,因为容器仅包含 Jenkins 本身?
答案1
jenkins 需要私钥,而 GitHub 需要公钥。如果我是你,我会让 jenkins 创建一个新密钥,它会向你显示要复制的公钥。从那里,你可以在 GitHubDeploy Key
的项目设置中添加密钥。
这样,詹金斯将对仓库拥有只读访问权限,而不是完全访问权限。