我想在一个作为詹金斯管道的一部分运行的码头容器里面执行一些git查询。 在Docker容器的外面,sshsgent工作正常,我可以访问我的SCM没有问题。在容器内部,我得到了主机密钥验证问题。
任何人都可以帮我解决我犯的错误吗?詹金斯管道里面的码头里面的Git不工作
script {
sshagent(['e9f7d09a-7b88-4bf7-814c-464f811d9519'])
{
sh("""
ssh -p 7999 [email protected] whoami
""")
}
docker.withRegistry('https://dockerhub.banana.com', 'banana-dockerhub-credential')
{
docker.image('banana_release_base').pull()
docker.image('banana_release_base').inside(
'''
-v /system:/system -v /tmp:/tmp --privileged -u 0
'''
)
{
sshagent(['e9f7d09a-7b88-4bf7-814c-464f811d9519'])
{
sh("""
echo $SSH_AUTH_SOCK
ssh -p 7999 [email protected] whoami
""")
}
}
}
}
首先WHOAMI呼叫输出:
[docker_git_test] Running shell script
+ ssh -p 7999 [email protected] whoami
d42967b44abe31d6
第二呼叫(和回声)在搬运工容器输出:
[docker_git_test] Running shell script
+ echo /tmp/ssh-dSoDZMggpAU1/agent.13
/tmp/ssh-dSoDZMggpAU1/agent.13
+ ssh -p 7999 [email protected] whoami
Host key verification failed
谢谢!我以错误的方式看待:/我认为主持人阻止了我的钥匙。 已添加到.ssh/config文件中,它现在正在工作:) 再次感谢 –
@ user2961873在这种情况下,您应该看到喜欢'denied:public key'(或类似的东西)的东西来向您显示身份验证失败。 – mkobit