首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内网Bitbucket安装NPM模块主机密钥校验失败

内网Bitbucket安装NPM模块主机密钥校验失败
EN

Stack Overflow用户
提问于 2018-10-19 07:25:14
回答 2查看 6.9K关注 0票数 6

我正在尝试从一个私有的Bitbucket存储库安装一个NPM模块。

我可以在系统本地成功运行npm install,但在服务器上运行失败。

错误是:

代码语言:javascript
复制
npm ERR! Error while executing:
npm ERR! /bin/git ls-remote -h -t ssh://git@bitbucket.org/myorg/my-repo.git
npm ERR! 
npm ERR! 
npm ERR! (ssh-askpass:10260): Gtk-WARNING **: cannot open display: :0.0
npm ERR! Host key verification failed.
npm ERR! fatal: Could not read from remote repository.
npm ERR! 
npm ERR! Please make sure you have the correct access rights
npm ERR! and the repository exists.
npm ERR! 
npm ERR! exited with error code: 128

奇怪的是,手动克隆服务器上的存储库效果很好:git clone git@bitbucket.org:myorg/my-repo

因此,SSH密钥配置正确。

EN

回答 2

Stack Overflow用户

发布于 2018-10-19 13:10:02

这应该表明执行npm命令所使用的帐户与用于在服务器上手动克隆存储库的帐户不同。

在npm帐户the ~/.known_hosts would need to be updated first中。

票数 2
EN

Stack Overflow用户

发布于 2020-08-27 03:15:21

我认为你是从Docker容器访问它,因为你没有从docker容器添加ssh密钥,这是存在问题的。因此,有两种解决方案

  1. 使您的Git资源库公开,这不是

推荐的做法

  1. npm在jenkins上安装所有节点模块,然后将所有节点模块复制到docker容器中。(基本上不是在package.json的Docker容器上安装npm,而是在Jenkins上安装npm,然后直接将这些模块复制到容器

docker文件中的更改将是

代码语言:javascript
复制
INITIALLY :
FROM node:12.10-alpine
WORKDIR /app
RUN apk update \
  && apk add git
COPY node_modules /app
COPY . /app
ADD set_envs.sh .
RUN ["chmod", "+x", "set_envs.sh"]
EXPOSE 80
ENTRYPOINT ["/app/set_envs.sh"]


AFTER CHANGES :
FROM node:12.10-alpine
WORKDIR /app
COPY node_modules /app
COPY . /app
ADD set_envs.sh .
RUN ["chmod", "+x", "set_envs.sh"]
EXPOSE 80
ENTRYPOINT ["/app/set_envs.sh"]

和在配置添加的Jenkins的shell脚本中

代码语言:javascript
复制
npm install

就是这样,它应该可以工作

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52883884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档