Gitlab-无法为CI和CD生成对远程服务器进行身份验证
当我的“.gitlab ci.yml”试图远程访问我的Ubuntu服务器以执行SSH命令时,我收到“输入/dev/fd/63的密码短语”错误 我创建了一个名为“STAGING_PRIVATE_KEY”的新变量,该值是我个人用于SSH到服务器的私钥,但为”提供相同的密钥。gitlab ci.yml“无法进行身份验证 下面是我的yml文件:Gitlab-无法为CI和CD生成对远程服务器进行身份验证,gitlab,gitlab-ci,gitlab-ci-runner,Gitlab,Gitlab Ci,Gitlab Ci Runner,当我的“.gitlab ci.yml”试图远程访问我的Ubuntu服务器以执行SSH命令时,我收到“输入/dev/fd/63的密码短语”错误 我创建了一个名为“STAGING_PRIVATE_KEY”的新变量,该值是我个人用于SSH到服务器的私钥,但为”提供相同的密钥。gitlab ci.yml“无法进行身份验证 下面是我的yml文件: deploy\u staging: 阶段:部署 在脚本之前: -'哪个ssh代理| |(apt get update-y&&apt get install o
deploy\u staging:
阶段:部署
在脚本之前:
-'哪个ssh代理| |(apt get update-y&&apt get install openssh client-y)'
-mkdir-p~/.ssh
-eval$(ssh代理-s)
-“[[-f/.dockerenv]]和&echo-e”主机*\n\t三通键检查号\n\n“>~/.ssh/config”
脚本:
-ssh add由于openssh是使用Git for Windows打包的,请尝试使用Opeensh密钥(使用ssh keygen生成),而不使用(目前)密码短语(以避免需要ssh代理)
在AWS端注册openssh公钥(默认id_rsa.pub)。
例如,在中,“”我使用下面的代码段使用.gitlab ci.yml
作业进行ssh,STAGING_ssh_KEY作为变量存储在Settings->ci/CD->Variables下
variables:
GIT_SSL_NO_VERIFY: "true"
image: someimage:latest #replace with any valid image which has ssh installed
before_script:
- mkdir -p ~/.ssh
- echo -e "$STAGING_SSH_KEY" > ~/.ssh/id_rsa
- chmod 600 ~/.ssh/id_rsa
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
stages:
- deploy
deploy_STAGING_job:
stage: deploy
script:
- echo "ssh into the below random IP"
- ssh myuser@10.200.200.200"
echo "Login using ssh to remote instance"
"