【问题标题】:Adding GPG key inside docker container causes "no valid OpenPGP data found"在 docker 容器中添加 GPG 密钥会导致“找不到有效的 OpenPGP 数据”
【发布时间】:2014-01-03 17:14:15
【问题描述】:

我正在尝试在 docker 容器中安装 New Relic 的系统监控,但 apt-key add - 失败并显示 no valid OpenPGP data found

有完整的Dockerfile

FROM ubuntu
MAINTAINER Matej Koubik

RUN echo deb http://apt.newrelic.com/debian/ newrelic non-free >> /etc/apt/sources.list.d/newrelic.list
RUN wget -O- https://download.newrelic.com/548C16BF.gpg | apt-key add -
RUN apt-get update
RUN apt-get install newrelic-sysmond
RUN nrsysmond-config --set license_key=...
RUN /etc/init.d/newrelic-sysmond start

【问题讨论】:

    标签: ubuntu docker openpgp


    【解决方案1】:

    @xdays 提供的解决方案可以解决该问题,但也可以解决 ssl 提供的保护。您可以在发出 wget 语句之前安装 ca-certificates 包,它应该可以与 ssl 一起使用。

    在调用 wget 之前添加以下行:

    RUN apt-get install -y ca-certificates wget
    

    【讨论】:

      【解决方案2】:

      看来是wget的问题,把--no-check-certificate加到你的wget中,就一切OK了。

      # wget --no-check-certificate -O- https://download.newrelic.com/548C16BF.gpg | apt键添加 - --2014-01-12 09:29:30-- https://download.newrelic.com/548C16BF.gpg 正在解决 download.newrelic.com (download.newrelic.com)... 50.31.164.159 正在连接到 download.newrelic.com (download.newrelic.com)|50.31.164.159|:443... 已连接。 警告:无法验证 download.newrelic.com 的证书,由`/C=US/O=GeoTrust, Inc./CN=GeoTrust SSL CA' 颁发: 无法在本地验证颁发者的权限。 HTTP 请求已发送,等待响应... 200 OK 长度:1682 (1.6K) [应用程序/八位字节流] 保存到:`STDOUT' 100%[================================================= ==================================================== ================================================>] 1,682 --.-K/s in 0s 2014-01-12 09:29:31 (15.1 MB/s) - 写入标准输出 [1682/1682] 好的

      【讨论】:

      • 接受的答案是正确的(添加 ca 证书);关闭证书检查会降低安全性,而上面有一个简单的解决方案。
      • 我遵循了正确的(添加 ca 证书),但不,仍然得到相同的错误?所以我不得不使用这个,不幸的是降低了安全性。不知道为什么即使在 wget 和调用 apt-key add 之前安装了 ca 证书,它仍然会失败。
      【解决方案3】:

      我在安装 docker 时遇到了这个问题。

      运行 sudo apt install apt-transport-https ca-certificates curl software-properties-common

      您可以参考here

      然后 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

      【讨论】:

        【解决方案4】:

        您可以将wget -O- https://download.newrelic.com/548C16BF.gpg | apt-key add -wget -O- https://download.newrelic.com/548C16BF.gpgapt-key add - 分开运行。可以参考here

        curl 也是如此。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-02-15
          • 1970-01-01
          • 2015-11-06
          • 2019-10-28
          • 1970-01-01
          • 2021-12-31
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多