首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“npm错误!自签名证书”在将npm安装作为坞构建的一部分运行时

“npm错误!自签名证书”在将npm安装作为坞构建的一部分运行时
EN

Stack Overflow用户
提问于 2017-09-14 16:32:16
回答 2查看 3.6K关注 0票数 1

我有一个Dockerfile在其中运行npm安装

..。运行npm安装..。

此错误如下所示:

代码语言:javascript
复制
npm ERR! Linux 4.4.0-92-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v7.10.1
npm ERR! npm  v4.2.0
npm ERR! code DEPTH_ZERO_SELF_SIGNED_CERT
npm ERR! self signed certificate

当直接在同一台机器上运行npm安装时,我不会碰到这个问题。(也就是说,当我运行它时,不是码头建设的一部分)。所以我不认为这个问题与任何http代理有关。

@Tarun,

这是curl -v https://docker.com的输出

-使用TLS1.2 / ECDHE_RSA_AES_128_GCM_SHA256的SSL连接

  • 服务器证书验证确定
  • 跳过服务器证书状态验证
  • 通用名称:*.docker.com (匹配)
  • 服务器证书过期日期确定
  • 服务器证书激活日期确定
  • 证书公钥: RSA
  • 证书版本:#3
  • 主题: CN=*.docker.com
  • 开始日期:2017年8月11日星期五格林尼治时间
  • 届满日期:2018年9月11日(星期二)
  • 发行人: C=US,O=Amazon,OU=Server CA 1B,CN=Amazon
  • 压缩:空
  • ALPN,服务器不同意协议

GET / HTTP/1.1 主机: docker.com 用户-代理: curl/7.47.0

下面是方框中停靠容器中的curl命令。

根@2145cd2e9997:/app/c3PO# curl -v https://docker.com

  • 重新构建到:https://docker.com/的URL
  • 在DNS缓存中找不到主机名。
  • 尝试52.55.168.191..。
  • 连接到docker.com (52.55.168.191)端口443 (#0)
  • 成功设置证书验证位置:
  • CAfile:无 CApath: /etc/ssl/certs
  • SSLv3,TLS握手,客户你好(1):
  • SSLv3,TLS握手,Server (2):
  • SSLv3,TLS握手,CERT (11):
  • SSLv3,TLS警报,Server (2):
  • SSL证书问题:自签名证书
  • 关闭连接0
  • SSLv3,TLS警报,客户你好(1):

curl:(60) SSL证书问题:自签名证书

这里有更多详细信息:http://curl.haxx.se/docs/sslcerts.html

curl默认使用证书颁发机构(CA)公钥(CA certs)的“包”来执行SSL证书验证。如果默认的包文件不够,可以使用--cacert选项指定备用文件。

如果此HTTPS服务器使用由包中表示的CA签名的证书,证书验证可能由于证书问题而失败(该证书可能过期,或者该名称可能与URL中的域名不匹配)。

如果要关闭curl对证书的验证,请使用-k (或-不安全)选项。

EN

回答 2

Stack Overflow用户

发布于 2020-01-03 09:37:20

如果您正在从Dockerfile运行一些npm命令,那么您可以在运行npm命令之前添加这个命令:

代码语言:javascript
复制
RUN npm config set strict-ssl false
RUN npm install

注意:建议将公司的根证书(如果您在公司防火墙后面)复制到容器中,而不是完全禁用SSL。

票数 1
EN

Stack Overflow用户

发布于 2017-09-14 20:29:19

我想出来了。我在码头主机上运行jenkins,并使用iptables将端口443转发到8080。这与修船师自己的停机坪规则相冲突,这些规则导致了我对自我签名证书的所有问题。

这个堆栈溢出帖子帮助我发现了这个问题:SSL certificate verification fails inside docker container on specific server

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

https://stackoverflow.com/questions/46224256

复制
相关文章

相似问题

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