我试图通过ssh部署主分支,但是在按照以下步骤进行部署后:https://medium.com/@hfally/a-gitlab-ci-config-to-deploy-to-your-server-via-ssh-43bf3cf93775:
我的脚本:
before_script:
- sudo apt-get update -qq
- sudo apt-get install -qq git
# Setup SSH deploy keys
- 'which ssh-agent || (sudo apt-get install -qq openssh-client )'
- eval $(ssh-agent -s)
- ssh-add <(echo "$SSH_PRIVATE_KEY")
- mkdir -p ~/.ssh
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
deploy_staging:
type: deploy
environment:
name: staging
url: serverIp
script:
- ssh -t -t user@serverIp "cd var/www/ && git checkout master && git pull origin master && exit"
only:
- master
是的,我已经生成了一个私有ssh密钥,并将其保存在ssh_private_key
变量中,我转到~/.ssh/authorized_keys
并将公钥放在那里,我已经输入了安装Runner的服务器,并给出了ssh user@serverip
并输入了,但是在管道中它总是生成这个错误,我甚至考虑将ssh-keygen
放入管道中,但是因为需要输入,所以它不起作用
注:
我不建议关闭hostKeyVerification,因为您希望确定连接到哪个服务器,等等。
相反,我建议配置一个名为known_hosts
的CI变量,其中包含所有主机名,并将其分隔在新行中,如
host1.com
host2.com
如果设置了环境变量,则可以在.gitlab-ci.yml
中添加以下脚本来自动添加主机键。它使用ssh-keyscan
将所有密钥添加到已知的主机文件中。
- echo "Configuring known hosts based on the CI Variable `KNOWN_HOSTS`"
- |
[[ ! -z "$KNOWN_HOSTS" ]] && echo "$KNOWN_HOSTS" | xargs -n 1 -I '{}' ssh-keyscan '{}' >> $HOME/.ssh/known_hosts || echo "KNOWN_HOSTS not set"
我正在尝试提交到我的存储库,但当我单击“发布分支”时,出现了一个错误,请帮助我,伙计们,我需要办公室工作的帮助,我是新来的。 点击这里查看图片
问题内容: 我的 詹金斯(Jenkins) 有问题,设置为“ git”,显示以下错误: 我已经用 ssh 测试过: 这是错误的: 我还使用“ SSH密钥”完成了这些步骤。 在詹金斯下登录 将您的github密钥复制到Jenkins .ssh文件夹 重命名键 但仍然无法在 jenkins中使用* git 仓库。 * 感谢帮助!。 问题答案: 更改为用户并手动运行命令: 首次通过SSH连接到新主机时,
我对jenkins有一个问题,设置“Git”,显示以下错误: 我已经用ssh进行了测试: 这是错误: 谢谢你的帮助!。
问题内容: 我具有对生产服务器的超级用户访问权限,我想在git中将最新版本部署到服务器,但是当我在要更新的文件夹上“ git pull”时遇到以下错误。 我浏览了一下,但是找不到明确的答案。 登台服务器在同一台计算机上运行,但是只是在不同的文件夹中,当我在该文件夹中时,一切正常。 我对Linux不太有经验,所以请提供有关如何修复的明确答案:-) 否则我可以使用任何我需要的东西 ps这在过去一直
null 在工作区d:\jenkins\workspace\test c:\program files\Git\bin\Git.exe rev-parse--is-inside-work-tree#timeout=10从远程Git存储库获取更改c:\program files\Git\bin\Git.exe config remote.origin.url Git@github.abc.com:a
我无法从gitlab CI/CD管道运行程序使用SSH在远程主机上成功docker compose。 docker compose失败,出现以下错误: 我不能在Gitlab之外重现这个问题。意思是,我尝试在我的本地机器上运行相同的docker映像我的gitlab部署步骤使用,在我的脚本中手动执行完全相同的命令,它像一个魅力... 我甚至通过连接到主机并打印来尝试脚本中的ssh配置,并且成功。 多谢