【发布时间】:2019-08-12 22:32:20
【问题描述】:
试图从我自己托管的 git-lab 服务器推送到另一台服务器, 我正在尝试推动 throw CI/CD 和 git-lab runner
我的.gitlab-ci 是:
stages:
- build
- test
before_script:
- 'which ssh-agent || ( apt-get install -qq openssh-client )'
- eval $(ssh-agent -s)
- ssh-add <(echo "$SSH_PRIVATE_KEY")
- mkdir -p ~/.ssh
- chown $USER ~/.ssh/config
- chmod 600 ~/.ssh/config
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
build:
stage: build
script:
- echo "Building..."
- ssh $DEPLOY_USER@$DEPLOY_SERVER "cd var/www/ && ls && exit"
test:
stage: test
script:
- echo "Testing..."
我刚刚在要推送到的服务器上创建了一个 ssh 密钥,并将私钥作为 git-lab 变量添加到 git-lab 服务器,然后在脚本.gitlab-ci 中使用它,但没有在任何地方添加任何公钥,我得到了错误:
user@ip:权限被拒绝(公钥)。
在构建阶段,请提供任何帮助,并在此先感谢您,
【问题讨论】:
-
您需要在
$DEPLOY_SERVER上将公钥添加到/home/user/.ssh/authorized_keys。你能试试这个并告诉我们结果吗? -
它工作了thanksssssssss,如果你想添加一个,我可以接受作为答案。