Docker 使用PGP验证Alpine容器中的GDB
我已经编译了GNU.org、博客和其他SO帖子中的信息,但是我缺少一个关键组件来正确验证我下载到容器中的GDB版本Docker 使用PGP验证Alpine容器中的GDB,docker,gdb,gnu,gnupg,alpine,Docker,Gdb,Gnu,Gnupg,Alpine,我已经编译了GNU.org、博客和其他SO帖子中的信息,但是我缺少一个关键组件来正确验证我下载到容器中的GDB版本 # Install GNU GDB RUN ["/bin/ash","-c","\ mkdir gdb-build \ && cd gdb-build \ && wget https://ftp.gnu.org/gnu/gdb/gdb-8.1.tar.xz \ && wget https://ftp.gnu.org/gn
# Install GNU GDB
RUN ["/bin/ash","-c","\
mkdir gdb-build \
&& cd gdb-build \
&& wget https://ftp.gnu.org/gnu/gdb/gdb-8.1.tar.xz \
&& wget https://ftp.gnu.org/gnu/gdb/gdb-8.1.tar.xz.sig \
&& gpg --import https://ftp.gnu.org/gnu/gnu-keyring.gpg \
&& gpg --verify --keyring ./gnu-keyring.gpg gdb-8.1.tar.xz.sig \
&& tar -xvf gdb-8.1.tar.xz \
&& cd gdb-8.1 \
&& ./configure --prefix=/usr \
&& make \
&& make -C gdb install \
&& cd .. \
&& rm -rf gdb-build/ \
"]
输出如下所示:
...
2018-03-10 18:04:52 (5.92 MB/s) - 'gdb-8.1.tar.xz' saved [20095080/20095080]
--2018-03-10 18:04:52-- https://ftp.gnu.org/gnu/gdb/gdb-8.1.tar.xz.sig
Resolving ftp.gnu.org... 208.118.235.20, 2001:4830:134:3::b
Connecting to ftp.gnu.org|208.118.235.20|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 72 [application/pgp-signature]
Saving to: 'gdb-8.1.tar.xz.sig'
0K 100% 1.27M=0s
2018-03-10 18:04:52 (1.27 MB/s) - 'gdb-8.1.tar.xz.sig' saved [72/72]
gpg: directory '/root/.gnupg' created
gpg: keybox '/root/.gnupg/pubring.kbx' created
gpg: can't open 'https://ftp.gnu.org/gnu/gnu-keyring.gpg': No such file or directory
gpg: Total number processed: 0
我错过了哪一步?如何正确配置GnuPG以访问密钥?gpg命令的正确语法是:
Syntax: gpg [options] [files]
Sign, check, encrypt or decrypt
Default operation depends on the input data
命令gpg--import
需要文件,而不是链接,因此gnu keyring.gpg
应该在gpg
命令之前下载
Dockerfile
的正确部分是:
RUN ["/bin/ash","-c","\
mkdir gdb-build \
&& cd gdb-build \
&& wget https://ftp.gnu.org/gnu/gdb/gdb-8.1.tar.xz \
&& wget https://ftp.gnu.org/gnu/gdb/gdb-8.1.tar.xz.sig \
&& wget https://ftp.gnu.org/gnu/gnu-keyring.gpg \
&& gpg --import ./gnu-keyring.gpg \
&& gpg --verify --keyring ./gnu-keyring.gpg gdb-8.1.tar.xz.sig \
&& tar -xvf gdb-8.1.tar.xz \
&& cd gdb-8.1 \
&& ./configure --prefix=/usr \
&& make \
&& make -C gdb install \
&& cd .. \
&& rm -rf gdb-build/ \
"]