我正在尝试在构建过程中向ssh-agent(docker image)添加本地私钥。
问题
我运行eval$(ssh-agent -s)
,一旦docker运行ssh-add /etc/ssh/id_rsa
,我收到以下错误:
Could not open a connection to your authentication agent.
目标: 我需要在NPM安装过程中克隆私有git repo。这个本地密钥将允许我对私人仓库进行身份验证。
====输出代码段====
Step 8/16 : RUN eval $(ssh-agent -s)
---> Running in 195ffeb1f84f
Agent pid 8
---> 0fcbc89d362f
Removing intermediate container 195ffeb1f84f
Step 9/16 : RUN ssh-add /etc/ssh/id_rsa
---> Running in ae99039e1fba
Could not open a connection to your authentication agent.
The command '/bin/sh -c ssh-add /etc/ssh/id_rsa' returned a non-zero code: 2
答案 0 :(得分:5)
您在步骤8中运行的代理程序在您执行步骤9时已经失效。您需要或一次执行所有步骤才能使其正常工作。
RUN eval $(ssh-agent -s) && ssh-add /etc/ssh/id_rsa && git checkout .....
答案 1 :(得分:0)
为什么不在容器中使用音量?
您可以使用/etc/ssh/id_rsa
路径在容器卷中装载/root/.ssh/id_rsa
。
答案 2 :(得分:0)
Tarun在评论中回答了这个问题:
“您在步骤8中运行的代理程序在您执行步骤9时已经死亡。您需要或一次执行所有步骤才能使用此功能。运行eval $(ssh-agent -s)&& ssh-add / etc / ssh / id_rsa&& git checkout ..... - Tarun Lalwani 2小时前“