SSH密钥转发

时间:2019-05-23 11:30:47

标签: macos docker ssh-keys

在构建docker映像时,我试图克隆一个私有github存储库。我已经安装了docker 18.09.2,并且根据Build secrets and SSH forwarding in Docker 18.09Using SSH to access private data in builds,我应该能够通过这样设置Dockerfile来使用转发的ssh密钥:

<MenuItem Header="GoToElement"
          Click="Click_GoToElement"
          Tag="{Binding RelativeSource={RelativeSource AncestorType=ContextMenu}, Path=PlacementTarget.Header}"/>

我已经使用 # syntax=docker/dockerfile:experimental FROM node:10.15.3 # Update and install any dependencies. RUN apt-get update RUN apt-get -y install openssh-client git # Clone the private repository RUN --mount=type=ssh git clone git@github.com:<USER>/<PRIVATE_REPO>.git 添加了ssh密钥,并且在运行ssh-add时成功列出了它。

要构建容器,然后使用以下命令:

ssh-add -L

尝试构建图像时,我仍然收到以下错误消息:

  

主机密钥验证失败。

我正在使用的Docker客户端正在运行macOS Mojave。

1 个答案:

答案 0 :(得分:0)

如以上注释中所指出的,host keyssh key是不同的东西,并且它不起作用的原因与我转发的ssh密钥无关,相反,我需要添加主机进入~/.ssh/known_hosts

RUN mkdir -p -m 0600 /root/.ssh && ssh-keyscan github.com >> /root/.ssh/known_hosts