以下命令在 shell 中运行时似乎有效

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

但在 Dockerfile 中执行时失败,如下所示:
Warning: apt-key output should not be parsed (stdout is not a terminal)
Executing: /tmp/apt-key-gpghome.1CIuj3LUOP/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
gpg: cannot open '/dev/tty': No such device or address

特定的 Dockerfile RUN 命令在 openjdk:8 图像上执行,该图像又从 buildpack-deps:stretch-scm 绘制

最佳答案

通过在 --no-tty 命令上添加 apt-key adv 也解决了;

知道为什么会这样吗?

关于docker - apt-key 命令在 shell 上工作,但在 Dockerfile 上失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53371626/

10-15 22:28