Node.js `npm安装`在节点10.21.0-jessie-slim Dockerimage上使用package-lock.json失败
我正在尝试npm安装一个带有Node.js `npm安装`在节点10.21.0-jessie-slim Dockerimage上使用package-lock.json失败,node.js,docker,npm,ssh,debian-jessie,Node.js,Docker,Npm,Ssh,Debian Jessie,我正在尝试npm安装一个带有git的项目+ssh://git@github.com使用节点的依赖项:10.21.0-jessie-slim docker image 我正在运行ssh密钥扫描,如下所示: RUN mkdir /root/.ssh \ && ssh-keyscan github.com >> /root/.ssh/known_hosts 没有包锁,我就可以安装依赖项。 但当包锁存在时,无法确定主机“github.com(140.82.114.3)”
git的项目+ssh://git@github.com
使用节点的依赖项:10.21.0-jessie-slim docker image
我正在运行ssh密钥扫描,如下所示:
RUN mkdir /root/.ssh \
&& ssh-keyscan github.com >> /root/.ssh/known_hosts
没有包锁,我就可以安装依赖项。
但当包锁存在时,无法确定主机“github.com(140.82.114.3)”的真实性
我发现在使用包锁运行时,使用的know_hosts文件是/home/node/.ssh/
因此,我将其添加到Dockerfile中:
ssh-keyscan github.com >> /home/node/.ssh/known_hosts
它是有效的。但是我想知道为什么会发生这种情况。当您的ssh配置文件将某些属性设置为true时会发生这种情况,例如
CheckHostIP
或HashKnownHosts
,因此如果有任何属性设置为true,强制ssh验证主机,那么ssh首先查看已知的主机,以便验证您的ssh配置文件
~/. ssh/config and /etc/ssh/ssh_config
请看一看当您的ssh配置文件将某些属性设置为true时会发生这种情况,如
CheckHostIP
或HashKnownHosts
,因此如果有任何属性设置为true,强制ssh验证主机,则ssh首先查看已知的主机,以便验证您的ssh配置文件
~/. ssh/config and /etc/ssh/ssh_config
请看一看