Jenkins 无法运行 ssh-agent,但本地容器可以

Jenkins 无法运行 ssh-agent,但本地容器可以

我正在尝试使用 SSH 代理插件在我的 Jenkins 实例上配置 SSH 密钥。Jenkins 使用 Kubernetes 容器作为工作程序。我的工作程序容器映像基于 alpine,并且只安装了 ansible 和 sshd。如果我在本地运行容器,我就可以配置密钥并毫无问题地连接到我的 ssh 服务器。

但是,如果我尝试通过 Jenkins 配置 ssh-agent,则在尝试运行与 ssh-agent 相关的任何内容时会出现错误:

mkdtemp: private socket dir: No such file or directory

我尝试运行chmod 1777 /tmp,但没有帮助。容器用户是 root(我知道这是一个问题,一旦 ssh 工作正常,我就会添加一个用户)。

JNLP 容器能够正确 SSH,只是我的自定义映像不能。到目前为止,这似乎是一个奇怪的权限问题。

当本地镜像没有这样的问题时,可能是什么原因导致 Jenkins 出现此错误?

相关内容