gitlab ssh runner 失败。怎么了?
Posted
技术标签:
【中文标题】gitlab ssh runner 失败。怎么了?【英文标题】:gitlab ssh runner fails. What's wrong? 【发布时间】:2021-11-07 04:47:51 【问题描述】:我正在尝试使用 ssh 运行器设置 gitlab ci/cd 管道。但是当我启动管道时,我有以下错误:
/etc/gitlab-runner/config.toml 如下:
concurrent = 1
check_interval = 0
log_level = "debug"
[session_server]
session_timeout = 1800
[[runners]]
name = "runner"
url = "https://gitlab.com/"
token = "XXXXXXXXXX"
executor = "ssh"
[runners.ssh]
host = "gitlab.com"
port = "22"
user = "gitlab-runner"
identity_file = "/home/gitlab-runner/.ssh/id_rsa"
[runners.custom_build_dir]
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]
[runners.cache.azure]
Runner 安装在 Ubuntu 20.04 下。我将不胜感激任何建议!提前谢谢你!
【问题讨论】:
【参考方案1】:SSH executor 是:
它使 GitLab Runner 连接到外部服务器并在那里运行构建。 我们有一些组织使用此执行器的成功案例,但通常我们建议使用其他类型之一。
考虑到它会尝试连接到gitlab.com
本身并在那里运行某些东西,你的 SSH 执行程序失败是有道理的:这肯定是不可能的,因为 GitLab 只会回答 ssh 查询以用于 Git 存储库操作,而不是随机用户脚本。
GitLab runner 旨在安装在用户控制器服务器上,(就像 GitHub webhook 一样),我为了被 GitLab 作业调用。
【讨论】:
非常感谢!以上是关于gitlab ssh runner 失败。怎么了?的主要内容,如果未能解决你的问题,请参考以下文章
GitLab runner 获取子模块的“主机密钥验证失败”
Windows 上的 Gitlab Build Runner 使用 HTTP 而不是 SSH
GitLab Runner CI 管道内的 SSH 连接无法验证主机密钥
Windows 10 OpenSSH ssh-add“代理拒绝操作”(GitLab Windows Shared Runner)