从Dockerfile构建并获取;以下签名不能';无法验证,因为公钥不可用:NO“U PUBKEY”;
我正在尝试使用Dockerfile构建供本地使用的PHP 5.3/Apache,该Dockerfile启动:从Dockerfile构建并获取;以下签名不能';无法验证,因为公钥不可用:NO“U PUBKEY”;,docker,debian,Docker,Debian,我正在尝试使用Dockerfile构建供本地使用的PHP 5.3/Apache,该Dockerfile启动: FROM php:5.3-apache RUN apt-get update && \ apt-get install -y \ libfreetype6-dev \ libjpeg62-turbo-dev \ libmcrypt-dev \ libpng-dev 但当我“阅读包裹清单”时,我得到: 阅读后,我尝试在第一行之后添
FROM php:5.3-apache
RUN apt-get update && \
apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng-dev
但当我“阅读包裹清单”时,我得到:
阅读后,我尝试在第一行之后添加以下内容:
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys AA8E81B4331F7F50 && \
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7638D0442B90D010
但是得到这个错误:
W: There is no public key available for the following key IDs:
9D6D8F6BC857C906
W: Failed to fetch http://http.debian.net/debian/dists/jessie/Release.gpg Connection failed [IP: 130.89.148.77 80]
我对Ubuntu和Debian几乎一无所知,我尝试了同样的方法,但用keyring.Debian.org
代替keyserver.Ubuntu.com
,得到了:
gpgkeys: key AA8E81B4331F7F50 can't be retrieved
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0
我试过这个:
RUN apt-get update && \
apt-get install -y --no-install-recommends \
apt-transport-https \
ca-certificates
RUN apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys AA8E81B4331F7F50
RUN apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 7638D0442B90D010
但是得到与最初相同的GPG错误
我现在不知道该怎么办。(我知道PHP5.3已经过时了,但很遗憾,我无法改变这一点。)在多次尝试和错误之后,我发现,如果不安装之前的
apt transport https ca证书,只需这样做就可以了:
RUN apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys AA8E81B4331F7F50 && \
apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys 7638D0442B90D010
我确实收到了此错误,但它似乎不会影响任何内容,安装之后将继续:
W: There is no public key available for the following key IDs:
9D6D8F6BC857C906
在多次尝试和错误之后,我发现,如果没有先前安装的apt transport https ca certificates
,只需执行此操作即可:
RUN apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys AA8E81B4331F7F50 && \
apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys 7638D0442B90D010
我确实收到了此错误,但它似乎不会影响任何内容,安装之后将继续:
W: There is no public key available for the following key IDs:
9D6D8F6BC857C906
从这个角度来看,一个解决方案是
gpg --recv-keys AA8E81B4331F7F50
gpg --export AA8E81B4331F7F50| apt-key add -
Dockerfile可能如下所示:
FROM php:5.3-apache
RUN for key in AA8E81B4331F7F50 7638D0442B90D010 9D6D8F6BC857C906; do \
gpg --recv-keys "$key" \
&& gpg --export "$key" | apt-key add - ; \
done
RUN apt-get update && \
apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng-dev
从这个角度来看,一个解决方案是
gpg --recv-keys AA8E81B4331F7F50
gpg --export AA8E81B4331F7F50| apt-key add -
Dockerfile可能如下所示:
FROM php:5.3-apache
RUN for key in AA8E81B4331F7F50 7638D0442B90D010 9D6D8F6BC857C906; do \
gpg --recv-keys "$key" \
&& gpg --export "$key" | apt-key add - ; \
done
RUN apt-get update && \
apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng-dev