Gitlab 如何配置CICD以开发ssh连接?

Gitlab 如何配置CICD以开发ssh连接?,gitlab,Gitlab,我试图使用CICD对gitlab服务器进行ssh,因为CI正在runner计算机上运行 当我尝试从runner机器ssh gitlab服务器时,它成功地完成了,但当我尝试使用CICD管道执行相同的操作时,它给出了这个输出。 在图1中,我只是为了测试目的尝试使用ssh连接我的登台机器将此添加到您的.gitlab-ci.yml中: before_script: - eval $(ssh-agent -s) - ssh-add <(echo "$SSH_PRIVATE_KEY") -

我试图使用CICD对gitlab服务器进行ssh,因为CI正在runner计算机上运行 当我尝试从runner机器ssh gitlab服务器时,它成功地完成了,但当我尝试使用CICD管道执行相同的操作时,它给出了这个输出。
在图1中,我只是为了测试目的尝试使用ssh连接我的登台机器

将此添加到您的.gitlab-ci.yml中:

before_script:
  - eval $(ssh-agent -s)
  - ssh-add <(echo "$SSH_PRIVATE_KEY")
  - mkdir -p ~/.ssh
  - echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
在脚本之前:
-eval$(ssh代理-s)
-ssh add~/.ssh/config
在Gitlab中的设置>CI/CD>秘密变量下设置私钥变量。
将变量命名为
SSH\u PRIVATE\u KEY
并将您的私钥粘贴为值。

我遇到了以下错误:作业失败:退出状态1,并且.SSH中没有配置文件。这个私钥是运行程序机器的吗?我有三台机器a=gitlab服务器B=staging服务器C=gitlab运行程序。现在使用CICD,我想ssh服务器B,因为CICD在runner服务器C上运行。当我手动尝试从C到B进行ssh时,它做得很完美,但当我使用管道进行此操作时,它显示了错误,因此我正确理解:您正在尝试从gitlab runner(服务器C)到暂存服务器(服务器B)进行ssh?你能发布你的.gitlab-ci.yaml吗?